Interesting article giving the perspective of someone who has been away from TiddlyWiki for a few years: Way back in the mists of time (actually, January 2009) I wrote about a really cool tool called TiddlyWiki, a “non-linear personal web notebook”. Fast forward to today and I just had an out of body experience: Completely by accident I found a TiddlyWiki that I started when I wrote that piece and it still works! Finding code that works flawlessly after just two or three years is magical enough but after seven years?! And given that TiddlyWiki is written as a single page Web application and considering how different browsers are now than they were in 2009, the fact that the old version of TiddlyWiki still works is not short of miraculous.
A thesis notebook based on TiddlyWiki. This is an example of a thesis notebook powered by TiddlyWiki 5.0.8-beta. TiddlyWiki is a great piece of software created by Jeremy Ruston. It allows you, among other things, to take notes, organize ideas, store information, and display all your stuff the way you want. It is an incredibly flexible tool you can adapt to fit almost all your needs. This TiddlyWiki has been customized to serve as a philosophy notebook centered around authors, books and papers, concepts and theories, and personal notes. I use it along with Zotero, which is a dedicated bibliography software. Both are free, open source projects. TiddlyWiki can be downloaded at http://tiddlywiki.com.
buggyj has created several useful plugins, including a WYSIWYG HTML editor, a configurable calendar and tag lists with draggable ordering. A collection of customisations and macros from Danielo Rodriguez. http://braintest.tiddlyspot.com/ This is my personal tiddlywiki file for testing. Here I will post the tools and Macros that I develop for this awesome tool. That way, all the help the comunity gave me can came back to the comunity again.
Task & Delegation Tracking, Meetings & Agenda Items, Project Roles, Progress & Status Updates, Reference Items, Tickler Calendar, Conversation Logging, Book Notes & Library, and More! Cardo is a standalone, browser-based tool that can be used as a simple task manager, or as a complex Project Management system (and indeed, I do use it this way in my daily work) as well as a fully Wiki-ized personal knowledge store. It runs completely independently in the browser, even without an Internet connection, making it possible to carry around on a USB stick, or to use on the morning commute.
An adaptor to enable TiddlyWiki to sync changes with a CouchDB database. https://github.com/wshallum/couchadaptor CouchDB sync adaptor for TiddlyWiki 5. Requires TiddlyWiki >= 5.1.2. Works in limited testing. Not sure how well it handles conflicts.
A guide to creating a baby journal with TiddlyWiki. http://a-penguin-in-redmond.blogspot.co.uk/2014/02/creating-baby-journal-with-tiddlywiki-5.html Keeping a journal about your baby is fun. It allows you to keep track of those events in your baby's life and development that are most important to you, and to tell them in your own words. [...] There are plenty of online services that can help to keep such a diary, but you need to have an internet connection to access them, and you have to trust them to keep your data safe.
A plugin that allows to encrypt your tiddlers individually Danielo Rodriguez. http://danielorodriguez.com/TW5-EncryptTiddlerPlugin/ Advantages: This wiki gives examples for various filters and their use in the list widget http://tobibeer.github.io/tw/filters/#Filter%20Examples This wiki gives examples for various filters and their use in the list widget. A good starting point to understand what filters yield which results also is test-filters.js.
An adaption of the "Ghostwriter" theme for TiddlyWiki. https://ibnishak.github.io/ghostwriter/ Ghostwriter is a popular, minimalist and mobile responsive theme for the blogging platform ghost. This is an adaptation for TiddlyWiki.
Creates bubble maps of Biblical texts. http://giffmex.org/gospels.bubbles.html#Gospels%20Bubbles This TiddlyWiki, which is still under construction, has several features that together make it lightning fast to find passages, types of passages, themes, people, places and images in the New Testament Gospels. The bubblemaps are color-coded overviews of each Gospel. Each type of passage (miracle story, parable, etc) was assigned a color. Bubblemaps allow you to do three things: An adaptation of the TiddlyWiki powered GTD® system formerly known as MonkeyGTD for TiddlyWiki version 5. GSD5 is a Getting-Thing-Done tool for TiddlyWiki5 based off the mGSD classic TiddlyWiki.
A collection of helpers by Thomas Elmiger, among them a tweet button macro, a text-stretch solution, a snippet extraction macro and a tiddler that installs a scroll-to-top button via drag-and-drop. Quick Extensions for TiddlyWiki 5 – […] As I take from the community, I am happy if I can give back. You can use my stuff to do whatever you like, but remember to save a back-up first.
A guide in Russian to creating an online shop with TiddlyWiki. No serverside code is needed, instead orders are handled by Disqus. An explainer about Twederation, a system of sharing information between TiddlyWiki instances. TWederation is a system for sharing information between participating TiddlyWikis without using a client-server model. The link here points to a tiddler that gives more details. This particular implementation works something like an online forum. On the rest of the site, you can follow discussions by the developers and collaborators occurring within the Twederation "network" itself.
An extensive collection of hints and tips from Jed Carty. http://inmysocks.tiddlyspot.com I made this so that some of my friends with absolutely no coding experience could use some of the better features of TW5 without having to learn much. I am hopefully going to continue updating it as I learn new things. There isn't really anything here that isn't available in plenty of other places, but I figured that since I spent a while putting it together and people keep saying that TW needs more documentation I would post it here.
A step by step guide to running TiddlyWiki on a CentOS Virtual Private Server. http://www.rosehosting.com/blog/install-and-run-tiddlywiki-on-a-centoos-6-vps-using-nginx/ In this tutorial we will guide you through the steps of installing and running TiddlyWiki on a CentOS 6 VPS. We will also install and configure Nginx as a reverse proxy, so you can run TiddlyWiki behind Nginx.
A complete online shop made in TiddlyWiki! A collection of extensions by @malgam http://malsandbox.tiddlyspot.com The "loadnew" plugin provides the JavaScript module $:/plugins/malgam/loadnew/loadnew.js that implements an incremental load command for Tiddlywiki 5. The javascript code is based on the built-in module $:/core/modules/commands/load.js that loads tiddlers from a Tiddlywiki file into a node.js Tiddlywiki instance. This command loads all non-system tiddlers, irrespective of whether they have been modified since last loaded. As a result, all tiddlers in the node.js tiddlers folder will end up with a new modification date. In contrast, the loadnew command only loads tiddlers that either don't already exist in the tiddlers folder, or have a newer modified date than the existing tiddler. With a backup strategy that uses a file system snapshot process to preserve historical versions of tiddlers, the loadnew command minimises the sizes of the resulting snapshots.
A Spanish guide to using TiddlyWiki on Android. http://3palmeras.wordpress.com/2014/11/05/microblogging-con-tiddlywiki/ Tiddlywiki software is prodigious based on javascript which is capable of holding a notepad that can be edited with Internet Explorer or function as a full blog, contained in a single file.
Translation by Google Translate
An adaption of the "Moments" theme for TiddlyWiki. http://tesseractmoments.surge.sh/ Moments is a beautiful free and responsive theme available for wordpress from here: http://www.s5themes.com/theme/moments/. This is an adaptation of the same for TW5 platform. All the design credits goes to the site and the original designer. If TW5 is going to be here for 25 years, might as well suit up.
NoteSelf is your personal, private, customizable, Evernote-like experience.
You want cloud? Fine! You don't? Fine too! It's all yours, It's your decision!
Why not be a bit selfish? NoteSelf is the perfect place to store your ideas, notes, thoughts, tips, tricks, recipes...
whatever you want to put into it! NoteSelf will store, index, and make it easily
searchable, so you will find it instantly whenever you need it! You already know and love Evernote, we know it. It is comfortable, it syncs, has search capabilities...
Wow, it's almost perfect, but what about: NoteSelf is built on top of TiddlyWiki, a powerful, free, highly customizable and open-source personal wiki.
We took the best of it, it's powerful customization system, and mixed it with one of the best
embedded databases available, PouchDb, for bringing the synchronization capabilities you need.
A quick guide to using TiddlyWiki (written in German) http://michaelsonntag.net/notizen-mit-tiddlywiki-systemuebergreifend-nutzen Those using multiple different computer platforms (if only PC and Android) knows for certain: You would like to sync notes across computers and thereby be independent of any apps or services. I am concerned at any rate so and so I am constantly looking for the perfect solution. With TiddlyWiki I found it mostly. As the name suggests, it TiddlyWiki is a Wikisystem. In contrast to all other wikis, TiddlyWiki is a single HTML file that runs in the browser and thus can be used on all modern operating systems. And because there is only one file, it can be very easily via the well-known cloud services (Dropbox, Google Drive, ownCloud) or synchronized with FTP or used on a USB stick.
(Translation from German by Google Translate)
A fast Forth interpreter for the Commodore PET, written in 6502 assembly language. The TiddlyWiki containing program documentation is automatically generated from the source code: see https://github.com/chitselb/pettil. http://chitselb.com/files/tiddlypettil.html Objectives of the project are, in no particular order: Detailed description of setting up TiddlyWiki on Node.js on OS X. http://undefinedvalue.com/2015/04/02/setting-personal-tiddlywiki-server-os-x For a new job, I decided to set up a personal wiki to keep notes. I wanted to keep it simple, meeting these requirements: After looking at the options, I settled on TiddlyWiki. I've used "classic TiddlyWiki" before, and liked its simplicity, but I was always a little annoyed with the weird steps you have to go through to save changes. The new version of TiddlyWiki includes support for running it as a real HTTP server, so you can use it just like an online wiki. But it took me a couple of hours to figure out how to set that up. The TiddlyWiki documentation is not clear ("not clear" is a euphemistic way of saying "terrible"). So, I've written up these instructions in the hope it will spare somebody else all the frustration I had.
A gamers guide to using TiddlyWiki. http://helugame.wordpress.com/2013/09/07/shining-ark-7-using-tiddlywiki/ I’ve been using TiddlyWiki for this game mainly to record the monsters’ locations and the items that they drop. This is so that when I need a certain item to upgrade/create weapons, I can quickly look it up; which monsters drop it and which quests have those monsters. As I play the game, as I encounter new information, I just input them into my Shining Ark TiddlyWiki. It’s like I’m building a wiki from scratch. The reason why I don’t just use online wikis is that 1) it’s too easy to get spoiled and 2) sometimes online wikis provide too much information (who cares about the non-gameplay related descriptions that can be found in the game, etc).
A collection of plugins by Stephen Kimmel, including a number of additional editor toolbar buttons. http://skplugins.tiddlyspot.com/ In keeping with the general spirit of the TiddlyWiki community, ie, you develop something useful and/or potentially interesting you share it with others, I'm sharing some of the plugins I've developed to go with the new Editor Toolbar. You'll find them and a more extensive discussion of what each does at http://skplugins.tiddlyspot.com/
Slides and Stories is a repository of the tools to optimize TW for scientific research and for presenting and publishing results. http://slidesnstories.tiddlyspot.com ...is a tool to save and reload sets of Tiddlers. This is already working, The aim is to develop a mechanism to transform these into instant slideshows. is a tool which gives you the possibility to attach and show specific information in tabs at the bottom of each Tiddler: ideas, notes, tasks, stories and presentations, comments, annotations and footnotes. An enormous collection of tips beautifully curated by Tobias Beer. It is actually a collection of sites, with sub-sites dedicated to topics such as filtering (http://tobibeer.github.io/tw/filters/). http://tobibeer.github.io/tb5/ A collection of references and sandbox for testing concepts around TiddlyWiki 5...
TiddlyServer is a special purpose Desktop app, designed to facilitate managing multiple instances of TiddlyWiki running as a server. It does not require internet acess to access the wikis. https://github.com/mklauber/TiddlyServer/releases/ TiddlyServer can import both TiddlyWiki files and TiddlyFolder wikis. For each wiki, you specify a prefix to serve it with and the source to import from. It will copy the wikis to its own internal store and begin serving them up at http://localhost:8080/{prefix}/. The export button for each wiki will convert it to a single file wiki. Reaction to TiddlyWiki5 from the translator of the German edition of TiddlyWikiClassic. http://blog.netplanet.org/2014/01/03/tiddlywiki-5-im-betatest/ There is little software that can still inspire me so even after years, as on the first day. This includes TiddlyWiki, the "pocket-wiki". The latter is because the Wiki completely fits into an HTML file, and this HTML file brings everything - JavaScript program logic, CSS appearance and the entire Wiki content as stored records. So a TiddlyWiki file is then sometimes happy times some megabytes in size, but just has the unbeatable advantage that it works just as fast file created locally in a variety of browsers.
(Translation from German by Google Translate)
An early release of an edition of TiddlyWiki customised for rigorous, academic notetaking. http://tw5.scholars.tiddlyspot.com/ TiddlyWiki for Scholars is a personal customization of TiddlyWiki 5.0.13-beta I made for note-taking from readings, but it can be useful for other purposes. The idea behind this adaptation is to show and to allow creating relevant data related to the current tiddler without leaving the tiddler.
A collection of tips and guides in French, introduced by this blog post: http://sylvain.naud.in/post/2014/10/29/Ressources-pour-TiddlyWiki-5-%28FR%29 Ce guide de prise en main de TiddlyWiki vous permettra de débuter sur ce logiciel : rédiger du texte avec la syntaxe wiki, insérer des images, créer des Tiddler, faire une recherche, ajouter des fonctionnalités, et bien d'autres choses.. Bonne lecture ! Sylvain
A Knowledge Network about TiddlyWiki. http://confocal-manawatu.pbworks.com/w/page/113574373/TiddlyWiki Interconnected with the visual taxonomy at every node:
http://debategraph.org/Stream.aspx?nid=457381&vt=bubble&dc=focus TWKN will be transferred into TWederation/TiddlyMap format as soon as I am convinced in reliable and secure versioning and multi-user operation in TW format.
Your assistance and support would be highly appreciated.
Notes and tips by a developer working on writing TiddlyWiki plugins – including TWExe, a widget for running Windows scripts and executables. A collection of articles covering integration with Fargo, Font Awesome and Google Calendar, and tips for managing task lists. http://blog.jeffreykishner.com/tiddlywiki/ I have become a regular user of TiddlyWiki and have become so accustomed to using Font Awesome icons in Fargo that I wanted to incorporate the icons into my wikis as well.
Dutch blog post about TiddlyWiki https://breinbout.wordpress.com/2014/11/26/tiddlywiki/ I'm allergic to websites that are highly dependent on JavaScript. I think that JavaScript has many useful applications to add functionality to a site, but content needs to be visible if JavaScript is switched off. I use the NoScript extension for Firefox and surf with pleasure over the Internet without spontaneous things happen that I do not give permission. I love JavaScript on a short leash. More crazier maybe I'm so excited about TiddlyWiki.
(Translation from Dutch by Google Translate)
An extensive collection of tips and resources for users of TiddlyWiki in Japanese. http://bacchus.ivory.ne.jp/bourbon/ TiddlyWikiをHTML5にしたTiddlyWiki5が正式にリリースされました。このTiddlyWiki5の使い方について、自分で試した機能を中心に解説します。 TiddlyWiki5は、非常に多機能なローカルWikiです。このブログに書いてあることは、TiddlyWiki5で出来ることのごく一部です。
Chris Hunt's detailed developer tutorials for getting started with writing widgets for TiddlyWiki. These pages document aspects TiddlyWiki5 programming, sharing "lessons learned" to help developers to get started with TiddlyWiki5 customization and extension. There are currently two articles in this wiki: A TiddlyWiki5 forum on Reddit. https://www.reddit.com/r/TiddlyWiki5/ A TiddlyWiki5 forum on Reddit. As of 2016, it claims to have the most up-to-date list of plugins available for TW5.
Huge collection of customisations and tweaks from Ton Gerner. http://tongerner.tiddlyspot.com/ I am a longtime user of TiddlyWiki Classic and still use it daily since you can't do everything in TiddlyWiki 5 (yet) ;) I started experimenting with TW5 at the end of September 2013 (alpha10).
Since I missed a few things in the layout I got used to in TiddlyWiki Classic 1, I started with modifying the layout of TW5.
To share my knowledge, I made a few guides about these 'modifications'.
The guides started as a non-linear personal web notebook (yeah, the subtitle of TiddlyWiki!). I started experimenting with layout things and used TW5 to document my experiments.
A wealth of hints, tips and notes about using TiddlyWiki on Node.js: http://larigot.avarts.ionio.gr/users/iani/wikis/tw5square.html TiddlyWiki is different from other wikis because of its principle of dynamically customizeable "storyline" based on tiddlers as basic units of information. That is, the user "composes" their own version of the webpage by clicking on tiddler links, which add tiddlers to the page in order to compose a storyline. The Node.js implementation in TiddlyWiki5 adds all the advantages of flat-file markup language based type of site. This makes TiddlyWiki an excellent alternative to flat-file based CMS/webpage/blog authoring systems for the web. Also very cool is the treatment of tags as menus everywhere.
Stephan Hradek's growing catalogue of tips, tutorials, and other resources. Stephan has also developed several plugins and macros that you can find at http://tiddlystuff.tiddlyspot.com/. http://tw5magick.tiddlyspot.com/ Some things in TiddlyWiki seem like Magic. As my preferred nick is Skeeve, I felt that TW5 Magick is a proper name for this collection of some of the "magic" tricks one can do with TiddlyWiki.
Tips and guides for using TiddlyWiki. http://dl.dropboxusercontent.com/u/118970/wiki/tw5tribalknowledge.html I never used Node.js until a couple weeks ago when I wanted to try a TW5 installation on Node and expand my knowledge a bit. I figured someone else may be in the same boat so I wrote it all down
An alternative LaTeX plugin for TiddlyWiki5. It supports a wider set of LaTeX commands than KaTeX, though not as extensive as MathJax http://tw5-texzilla.tiddlyspot.com This plugin provides LaTeX support in TiddlyWiki5, using the TeXZilla latex parser to generate MathML. Only Firefox and Safari support MathML at the moment, so the plugin is only useful if you're using one of these browsers. It might be possible to combine this plugin with MathJax to convert MathML to something that other browsers can understand, e.g. HTML+CSS, but I haven't tried this.
A collection of TiddlyWiki resources from Mario Pietsch, with a focus on cloud deployments. Mario also maintains the German translation of TiddlyWiki. My name is Mario Pietsch from Austria. I'm living near Salzburg. This page, will be the portal to my TiddlyWiki, TiddlyWeb related content.
A guide (in French) to using TiddlyWiki on the BiblioBox, a variation of the PirateBox mobile communication and file sharing system. http://bibliobox.net/blog/post/2014/07/16/un-wiki-sur-votre-bibliobox-avec-tiddlywiki I've known TiddlyWiki since its beginning in 2004. For personal or professional needs, I used it regularly for notepad staff in 2007 and 2012. But I admit I ignored the tool during the past two years. And then I said yesterday: but why not put TiddlyWiki on a BiblioBox? Because it is a single HTML file with javascript. In addition I knew the existence of a server version for saving online amendments.
Hand optimised from a translation by Google Translate
Matabele's stylish and clean system for personal task management. This is my work in progress version of TW5, incorporating various features and ideas as and when they intrigue me. To grab any feature you may wish to try, drag the listed tiddlers across to the dropzone of an empty TiddlyWiki 5.0.10-beta
TiddlyWiki is an incredibly flexible and versatile tool that is conceived and constructed differently than most software. This can make it hard to understand until the moment when it clicks, and becomes a seamless extension of your brain. Starting with the basics, TiddlyWiki is a note-taking web application you can download for free, store wherever you like and customise however you wish. Use it to capture, organise and share your notes in ways that word processors and other note-taking tools cannot. TiddlyWiki is designed to be non-linear, structuring content with stories, tags, hyperlinks, and other features. You can organise and retrieve your notes in ways that conform to your personal thought patterns, rather than feel chained to one preset organisational structure. You can use TiddlyWiki as a single file that you view and edit through any web browser, whether you are online or offline. Or you can use it as a powerful Node.js application that stores each of your notes as a separate file. How can you make TiddlyWiki work for you? We recommend you start with our introductory documentation listed below, and then browse the TableOfContents, available in the Contents tab in the sidebar. Or just follow our simple instructions and try it out for yourself! A plugin to integrate the Ace editor into TiddlyWiki. Being quite new to TW5 development I tried my best to draft a SyncAdaptor to store tiddlers in IndexedDb. This is quite useful if an application / plugin installation is not possible (we have quite some restrictions at work...).
TiddlyWiki wouldn't be possible without the ongoing support of the TiddlyWiki Community. Their attention and feedback has made it possible to gain an understanding of what is wanted from the product, and their passion for it has taught me that it is worth the investment. TiddlyWiki incorporates code from these fine OpenSource projects: And media from these projects: The action-createtiddler widget is an action widget that creates new tiddlers. ActionWidgets are used within triggering widgets such as the ButtonWidget. There are several differences from the tm-new-tiddler message: The action-createtiddler widget is invisible. Any content within it is ignored. That renders as: New button caption:
The action-deletefield widget is an action widget that deletes specified fields of a tiddler. ActionWidgets are used within triggering widgets such as the ButtonWidget. The action-deletefield widget is invisible. Any content within it is ignored. Here is an example of a button that deletes the caption and tags fields of the current tiddler: That renders as:
Here is an example of a button that deletes the modified date and tags fields of the tiddler HelloThere: That renders as:
Here is an example of a button that uses the optional $field attribute to delete the text field of the tiddler HelloThere: That renders as:
The action-deletetiddler widget is an action widget that deletes tiddlers. ActionWidgets are used within triggering widgets such as the ButtonWidget. There are several differences compared to the WidgetMessage: tm-delete-tiddler: The action-deletetiddler widget is invisible. Any content within it is ignored. Here is an example of a button that deletes the tiddler HelloThere: That renders as:
Here is an example of a button that deletes all tiddlers tagged TableOfContents: That renders as:
The action-listops widget is an action widget that manipulates user lists in any field or data index. ActionWidgets are used within triggering widgets such as the ButtonWidget. The action-listops widget is invisible. Any content within it is ignored. A number of extended filter operators are necessary for the manipulation of lists. These operators have been designed primarily for use in subfilter expressions whereby the modified current list is returned in place of the current list. In this example we shall populate and then clear a list in an ordinary field (myfield) of this tiddler (the default.) That renders as:
In this example we shall append and remove items from a list in an ordinary field (myfield) of this tiddler (the default) and sort the resultant list. We shall then remove some of the appended items and sort the resulting list in reverse order. That renders as:
In this example we shall append a few tags to the 'tags' field of this tiddler (the default.) We shall then remove some of the appended tags. That renders as:
The action-navigate widget is an action widget that sends a tm-navigate message back up the widget tree. ActionWidgets are used within triggering widgets such as the ButtonWidget. The action-navigate widget is invisible. Any content within it is ignored. The optional Note that if navigating to multiple tiddlers at once you should use the same Here is an example of button that navigates to two different tiddlers at once: That renders as:
The action-sendmessage widget is an action widget that sends a message back up the widget tree. ActionWidgets are used within triggering widgets such as the ButtonWidget. The action-sendmessage widget is invisible. Any content within it is ignored. Here is an example of button that displays both a notification and a wizard, and creates a new tiddler with tags and text: That renders as:
The action-setfield widget is an action widget that assigns values to the fields of a tiddler. ActionWidgets are used within triggering widgets such as the ButtonWidget. The action-setfield widget is invisible. Any content within it is ignored. Here is an example of a pair of buttons that open the control panel directly to specified tabs. They work by using action-setfield to set the state tiddler for the control panel tabs. That renders as:
Here is an example of a button that assigns tags and fields to the tiddler HelloThere, and then navigates to it and opens the tiddler info panel on the "Fields" tab: That renders as:
Here is an example of a button that assigns tags and fields to the tiddler HelloThere, and then initiates editing it: That renders as:
Here is an example of a button that opens the control panel directly to the "Appearance" tabs: That renders as:
Action widgets are a special type of widget that have no visual appearance but perform an action when triggered (such as sending a message, navigating to a tiddler, or changing the value of a tiddler). Action widgets are used in association with other widgets that trigger those actions (for example, the ButtonWidget). The following action widgets are provided: There are two ways to use action widgets: The action widgets are passed as a string to the The action widgets need not be immediate children of their triggering widget, but they must be descendents of it. The actions are performed in sequence. Here is the above example rewritten to use embedding: A customisable table of contents can be added to the sidebar with the following steps: Add entries to the table of contents by creating tiddlers tagged TableOfContents. An easy way is to choose new here from the tiddler toolbar. To create sub-entries, tag them with the name of the parent entry.
Here's a macro that provides a Twitter Follow button for a particular username: The only change from the version published at https://dev.twitter.com/docs/follow-button is that new lines have been removed. Note that the src URL is given without a protocol (ie "http" or "https"). It's done this way so that it works on sites whether they are hosted on a HTTP or HTTPS domain. If you want the Twitter button to work while using a TiddlyWiki offline on a "file://" URL, then you'll need to manually add the protocol. For example: Not all browsers support the latest features of ES2015. The Babel project offers a polyfill that can be included into your TiddlyWiki so those features can be available to your plugins. To do this you will need a copy of the polyfill source. You can obtain the source either through npm or downloaded/saved. See the Babel Polyfill documentation for specific information on installing it. In your TiddlyWiki editions folder make sure you have a Create the folder Now copy the Lastly you need a initializer so create the Now all the runtime ES2015 features are available like using See Using ES2016 for Writing Plugins on how to use the ES2015 syntax for your plugin code.
As the structures within your TiddlyWiki documents get more complex it can be hard to keep the titles of tiddlers consistent. For example, should terms be defined in the plural or the singular? Camel case or separate words? Recording a formal titling policy can help to reduce confusion. For example, the titling policies for this wiki are recorded in the Documentation Style Guide. A useful convention is to use the prefix If These examples make use of the Days of the Week tiddler. The Thursday tiddler shows a further example. Alerts are displayed as yellow boxes overlaying the main TiddlyWiki window. Each one corresponds to a tiddler with the tag $:/tags/Alert. Clicking the delete icon on an alert deletes the corresponding tiddler. Here's a demo . Alert tiddlers should have the following fields: The parameter specifies zero or more fundamental categories using the following syntax: If the parameter specifies more than one category, they are processed from left to right. The overall output is initially empty, and each category's output is dominantly appended to it in turn. Unrecognised categories contribute nothing to the output. As a special case, if the parameter is empty, the output is simply a copy of the input. This can be useful when the parameter is soft. The These examples make use of the Days of the Week tiddler. These examples make use of the Days of the Week tiddler. Current tiddlers: Here are the details of the alpha releases of TiddlyWiki5. See TiddlyWiki5 Versioning for details of how releases are named. Released 6일 12월 2013 at 17:53 See GitHub for detailed change history of this release These examples make use of the Days of the Week tiddler. Here are some recent articles written about TiddlyWiki. Submit new articles via GitHub, Twitter or by posting in the TiddlyWiki Groups. Interesting article giving the perspective of someone who has been away from TiddlyWiki for a few years: Way back in the mists of time (actually, January 2009) I wrote about a really cool tool called TiddlyWiki, a “non-linear personal web notebook”. Fast forward to today and I just had an out of body experience: Completely by accident I found a TiddlyWiki that I started when I wrote that piece and it still works! Finding code that works flawlessly after just two or three years is magical enough but after seven years?! And given that TiddlyWiki is written as a single page Web application and considering how different browsers are now than they were in 2009, the fact that the old version of TiddlyWiki still works is not short of miraculous.
Detailed description of setting up TiddlyWiki on Node.js on OS X. http://undefinedvalue.com/2015/04/02/setting-personal-tiddlywiki-server-os-x For a new job, I decided to set up a personal wiki to keep notes. I wanted to keep it simple, meeting these requirements: After looking at the options, I settled on TiddlyWiki. I've used "classic TiddlyWiki" before, and liked its simplicity, but I was always a little annoyed with the weird steps you have to go through to save changes. The new version of TiddlyWiki includes support for running it as a real HTTP server, so you can use it just like an online wiki. But it took me a couple of hours to figure out how to set that up. The TiddlyWiki documentation is not clear ("not clear" is a euphemistic way of saying "terrible"). So, I've written up these instructions in the hope it will spare somebody else all the frustration I had.
Dutch blog post about TiddlyWiki https://breinbout.wordpress.com/2014/11/26/tiddlywiki/ I'm allergic to websites that are highly dependent on JavaScript. I think that JavaScript has many useful applications to add functionality to a site, but content needs to be visible if JavaScript is switched off. I use the NoScript extension for Firefox and surf with pleasure over the Internet without spontaneous things happen that I do not give permission. I love JavaScript on a short leash. More crazier maybe I'm so excited about TiddlyWiki.
(Translation from Dutch by Google Translate)
A quick guide to using TiddlyWiki (written in German) http://michaelsonntag.net/notizen-mit-tiddlywiki-systemuebergreifend-nutzen Those using multiple different computer platforms (if only PC and Android) knows for certain: You would like to sync notes across computers and thereby be independent of any apps or services. I am concerned at any rate so and so I am constantly looking for the perfect solution. With TiddlyWiki I found it mostly. As the name suggests, it TiddlyWiki is a Wikisystem. In contrast to all other wikis, TiddlyWiki is a single HTML file that runs in the browser and thus can be used on all modern operating systems. And because there is only one file, it can be very easily via the well-known cloud services (Dropbox, Google Drive, ownCloud) or synchronized with FTP or used on a USB stick.
(Translation from German by Google Translate)
Reaction to TiddlyWiki5 from the translator of the German edition of TiddlyWikiClassic. http://blog.netplanet.org/2014/01/03/tiddlywiki-5-im-betatest/ There is little software that can still inspire me so even after years, as on the first day. This includes TiddlyWiki, the "pocket-wiki". The latter is because the Wiki completely fits into an HTML file, and this HTML file brings everything - JavaScript program logic, CSS appearance and the entire Wiki content as stored records. So a TiddlyWiki file is then sometimes happy times some megabytes in size, but just has the unbeatable advantage that it works just as fast file created locally in a variety of browsers.
(Translation from German by Google Translate)
Audio files can be incorporated into TiddlyWiki in a very similar way to images. Small audio files can be embedded directly within TiddlyWiki. Embedding isn't suitable for large files (over a few hundred kilobytes) because it increases the size of the TiddlyWiki file. For example, the tiddler TiddlyWiki.mp3 contains an MP3 recording of the word "TiddlyWiki". If you visit that tiddler, you should see an audio player that will play back the recording. You can also transclude audio files. For example: That renders as: External audio tiddlers use the _canonical_uri field to point to an external audio file/stream, and have their text field blocked. This reduces their size considerably, but still allows for playback. For example, the tiddler Caruso - Ave Maria points to an online audio recording hosted on http://archive.org: That renders as: If there is a SaverModule available that supports it, TiddlyWiki will automatically trigger a save of the current document on clicking ok or delete when editing a tiddler. You should see a yellow notification at the top right of the window to confirm that an automatic save has taken place. Automatic saving can be enabled or disabled through the Settings tab of the control panel . Behind the scenes, it is controlled through the configuration tiddler $:/config/AutoSave, which must have the value yes to enable automatic saving.
Each input title is processed in turn. The corresponding tiddler's list of backlinks is generated, sorted alphabetically by title, and then dominantly appended to the operator's overall output. From Beaker Browser website: Beaker is a Peer-to-Peer Web Browser, made for users to run applications independently of hosts. Using P2P Hypermedia, Beaker separates frontend apps from backend services, so that users are completely in control of their software and data. Read more. Beaker is a fork of the open source Chromium browser (which is the core engine powering Google's Chrome browser). Beaker adds the ability to host sites within the browser, and browse to those sites via the Further, you can opt to host a site belonging to somebody else, forming part of a Bittorrent-like swarm of peers serving the content to other browsers. You can also fork a site, making your own copy that you can change as you need. The main disadvantage is that mainstream browsers cannot use Most of the magic is accomplished by the underlying Dat protocol. New in 5.1.14 TiddlyWiki incorporates a special saver module permitting changes to be saved directly from Beaker browser. See TiddlyWiki on Beaker Browser for instructions. If These examples make use of the Days of the Week tiddler. The Thursday tiddler shows a further example. Here are the details of the beta releases of TiddlyWiki5. See TiddlyWiki5 Versioning for details of how releases are named. Released 17일 9월 2014 at 22:10 See GitHub for detailed change history of this release This is a minor release prior to the full release of TiddlyWiki on September 20th. The documentation has been cleaned up and improved (with more improvements to come). The layout of files on tiddlywiki.com has been adjusted to make it more logical. See the ticket for a discussion. You can see the source files that make up tiddlywiki.com at https://github.com/Jermolene/jermolene.github.com @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: There are two ways to produce HTML block quotes in TiddlyWiki5, one for content spread across multiple lines, and one for single line content. The syntax for multi-line block quotes () is: That renders as: This is a block quoted paragraph
written in English
... and the underlying HTML is: A citation can be added to the quote like this: That renders as: Computers are like a bicycle for our minds
... and the underlying HTML is: CSS classes can be added to a block quote: That renders as: Operating systems are like a brick wall for our minds
... and the underlying HTML is: The single-line syntax for block quotes is actually an extension of the syntax for Lists in WikiText. For example: That renders as: Quoted text Another line of quoted text ... and the underlying HTML is: You can also nest quotes like this: Which renders as: A top quote A subquote Another top quote You can also mix block quotes with other list items. For example: That renders as: A quote Another quote ... and the underlying HTML is: The Blog edition of TiddlyWiki contains tools to help publish static HTML blogs written in TiddlyWiki. It is currently designed for use under Node.js. While documentation is being prepared, see https://github.com/Jermolene-blog/blog for an example of use.
TiddlyWiki is designed to work with HTML5-compatible browsers. The following table summarises the browser versions that are known to work with TiddlyWiki The browse widget displays an HTML file browser button that allows the user to choose one or more files to import. It sends a WidgetMessage: tm-import-tiddlers carrying a JSON representation of the tiddlers imported from the files up through its parents. This message usually trapped by the NavigatorWidget which adds the tiddlers to the store and updates the story to display them. The content of the On iPhone/iPad choosing the multiple option will remove the ability to take photographs/videos directly into TiddlyWiki. e.g. renders as: BT (née British Telecom) is the UK's largest telecommunications company. In 2007, Osmosoft was acquired by BT. JeremyRuston subsequently left BT in 2011.
현재 위키에 지정한 빌드 대상을 빌드합니다. 빌드할 대상을 지정하지 않으면 모든 사용할 수 있는 대상을 빌드합니다. 빌드 대상은 위키 폴더의 See TiddlyWikiFolders for details of defining build targets.
TiddlyWiki5 can be used to build older 2.x.x versions of TiddlyWikiClassic from their constituent components. Doing so involves these features: TiddlyWikiClassic is built from the command line by running TiddlyWiki on Node.js. A typical usage would be: These examples make use of the Days of the Week tiddler. The button widget displays an HTML The integrated actions are provided as a shortcut for invoking common actions. The same functionality is available via ActionWidgets, with the exception of the support for highlighting selected popups. The content of the Note: In almost all other cases where a TextReference is used as a widget attribute, it will be placed between curly brackets, to transclude the value currently stored there. However, when we use a TextReference as the value of a button widget's Tip: Set class to CSS is a standard plain-text format used for defining the presentational style of the various elements on a web page.
The changecount macro returns the number of times the current tiddler has been created, stored or deleted during the current TiddlyWiki session. If a tiddler is deleted and subsequently recreated, its (none) The value will increase if you edit this tiddler and store it again, even without making any changes to its content. To access the The value shown will increase whenever you create, store or delete New Tiddler.
This release resolves a number of inconsistencies with the way that filters are handled. The changes mean that existing filters may need to be updated - particularly those that must deal with missing or shadow tiddlers. Most filter operators act by choosing some or all of their source titles to pass through or re-order. Those that add new entries that are not drawn from the source list are referred to as selectors. Prior to 5.0.9-beta, a few filter operators were inconsistent in whether they filtered from the source list or selected new entries into it. The specific changes are: The sources for the all operator can be combined with the Previously, it was common to have In 5.0.9, that filter has been changed to: Note how the all operator allows operations to be performed on tiddlers from combinations of sources. One result of the changes is that The solution is generally to use There are minor changes to the way that the title and field operators work. The title operator is a selector: it returns the specified title regardless of whether it is in the current source. title is used as the default operator if none is specified The field operator is a filter: it only returns a subset of the source tiddlers. field is used as the default operator if the supplied operator is not defined (the supplied operator is passed as the suffix to the field operator, so The checkbox widget displays an HTML The content of the Using the checkbox widget in tag mode requires the tag attribute to specify the name of the tag. The tiddler attribute specifies the tiddler to target, defaulting to the current tiddler if not present. This example creates a checkbox that flips the done tag on the current tiddler: That renders as:
Using the checkbox widget in field mode requires the field attribute to specify the name of the field. The checked and unchecked attributes specify the values to be assigned to the field to correspond to its checked and unchecked states respectively. The default attribute is used as a fallback value if the field is not defined. This example creates a checkbox that is checked if the field status is equal to open and unchecked if the field is equal to closed. If the field is undefined then it defaults to closed, meaning that the checkbox will be unchecked if the status field is missing. That renders as: To use the checkbox widget in index mode set the index attribute to the index of a DataTiddler. The checked and unchecked attributes specify the values to be assigned to the index and correspond to its checked and unchecked states respectively. The default attribute is used as a fallback value if the index is undefined. The example below creates a checkbox that is checked if the index by the name of this tiddler in the tiddler ExampleData is equal to selected and unchecked if the index is an empty string. If the index is undefined then it defaults to an empty string, meaning the checkbox will be unchecked if the index is missing. That renders as:
This example of using the The Set Widget uses a filter value to set the value of variable It is often necessary to use triple quotes with the That renders as:
You can use triple backticks Renders as: To be interpreted correctly, the three backticks need to be at the start of the line and immediately followed by a line-break. Be aware that any preceding paragraph content should be properly terminated with a double line break, too. So, this example is wrong: The correct version is: Note that some keyboard layouts treat the backtick as a dead key, making it hard to type. The trick is to type three backticks followed by a space. Alternatively, type all six backticks in one go, then a space, and then move the cursor back three characters to type or paste the content. The codeblock widget renders text in The content of the The Here is an example embedding the contents of a tiddler as a code block. That renders as: A codeblock may also specify a language. That renders as: The colour (or color) macro returns the CSS value of one the colours in the current palette. If no such entry exists in the current palette, the vanilla palette is used instead. A colour palette is a data tiddler that supplies a CSS colour value, such as yellow or #fe0, for each of several colour names, like this: Several palettes form part of the core. The system tiddler $:/palette always contains the title of the currently selected palette tiddler. You can change a palette using the palette button, found on the "Tools" tab in the sidebar. To retrieve the value of a named colour from the current palette, e.g. for use in a stylesheet tiddler, use the Palette tiddlers should have the following fields: CSV is a standard plain-text format for storing a table of data. Each row of the table is called a record and occupies one line. The columns are called fields. Each field of a row is separated from the next by a comma, and is often delimited by quotation marks. The A command is one of the following words, written with a Here we gather the latest and most useful material from the TiddlyWiki community. The latest news, articles, resources and examples. A mapping plugin based on Leaflet library. Allows you to create maps based upon geographical data contained in tiddlers. http://sycom.github.io/TiddlyWiki-Plugins/#Leaflet%20plugin The leaflet plugin is a (working) attempt to integrate the leaflet library in TiddlyWiki in order to display geographical purpose tiddlers. For now Have a look at demo page on the web.
NoteSelf is your personal, private, customizable, Evernote-like experience.
You want cloud? Fine! You don't? Fine too! It's all yours, It's your decision!
Why not be a bit selfish? NoteSelf is the perfect place to store your ideas, notes, thoughts, tips, tricks, recipes...
whatever you want to put into it! NoteSelf will store, index, and make it easily
searchable, so you will find it instantly whenever you need it! You already know and love Evernote, we know it. It is comfortable, it syncs, has search capabilities...
Wow, it's almost perfect, but what about: NoteSelf is built on top of TiddlyWiki, a powerful, free, highly customizable and open-source personal wiki.
We took the best of it, it's powerful customization system, and mixed it with one of the best
embedded databases available, PouchDb, for bringing the synchronization capabilities you need.
Slides and Stories is a repository of the tools to optimize TW for scientific research and for presenting and publishing results. http://slidesnstories.tiddlyspot.com ...is a tool to save and reload sets of Tiddlers. This is already working, The aim is to develop a mechanism to transform these into instant slideshows. is a tool which gives you the possibility to attach and show specific information in tabs at the bottom of each Tiddler: ideas, notes, tasks, stories and presentations, comments, annotations and footnotes. A Knowledge Network about TiddlyWiki. http://confocal-manawatu.pbworks.com/w/page/113574373/TiddlyWiki Interconnected with the visual taxonomy at every node:
http://debategraph.org/Stream.aspx?nid=457381&vt=bubble&dc=focus TWKN will be transferred into TWederation/TiddlyMap format as soon as I am convinced in reliable and secure versioning and multi-user operation in TW format.
Your assistance and support would be highly appreciated.
Task & Delegation Tracking, Meetings & Agenda Items, Project Roles, Progress & Status Updates, Reference Items, Tickler Calendar, Conversation Logging, Book Notes & Library, and More! Cardo is a standalone, browser-based tool that can be used as a simple task manager, or as a complex Project Management system (and indeed, I do use it this way in my daily work) as well as a fully Wiki-ized personal knowledge store. It runs completely independently in the browser, even without an Internet connection, making it possible to carry around on a USB stick, or to use on the morning commute.
An enormous collection of tips beautifully curated by Tobias Beer. It is actually a collection of sites, with sub-sites dedicated to topics such as filtering (http://tobibeer.github.io/tw/filters/). http://tobibeer.github.io/tb5/ A collection of references and sandbox for testing concepts around TiddlyWiki 5...
TiddlyServer is a special purpose Desktop app, designed to facilitate managing multiple instances of TiddlyWiki running as a server. It does not require internet acess to access the wikis. https://github.com/mklauber/TiddlyServer/releases/ TiddlyServer can import both TiddlyWiki files and TiddlyFolder wikis. For each wiki, you specify a prefix to serve it with and the source to import from. It will copy the wikis to its own internal store and begin serving them up at http://localhost:8080/{prefix}/. The export button for each wiki will convert it to a single file wiki. A collection of helpers by Thomas Elmiger, among them a tweet button macro, a text-stretch solution, a snippet extraction macro and a tiddler that installs a scroll-to-top button via drag-and-drop. Quick Extensions for TiddlyWiki 5 – […] As I take from the community, I am happy if I can give back. You can use my stuff to do whatever you like, but remember to save a back-up first.
It's a frequent use case in TiddlyWiki that you will want to put the results of variables together with various bits of strings of text. This process in some programming languages is often referred to as "concatenating" text. You might, for instance want to set up a template for your customer database, where links will automatically refer to additional contact information about your customer. Inside your tiddler, you might try something like this: But that won't work. If you try this, the link will be interpreted very literally, and will attempt to take you to: The solution is to use a macro to put the rendered value of Create a macro either at the top of the tiddler or in a global tiddler (see Macros) like this: You might be tempted to invoke the new macro like this: But if you do, you will find that Instead, you could use the MacroCallWidget widget, like this: In this case, we passed the value of a variable directly to our macro. This is often a general way to go about this task. If you wanted to create more links based on other variables you could re-use the macro for each situation. If, as in this case, the only variable you are using is Notice that in this case we don't pass an argument. Instead, we reference the variable using the special syntax
These are the concepts underlying TiddlyWiki. Understanding how these ideas fit together is the key to getting the most from TiddlyWiki. The configuration tiddler $:/config/TiddlerInfo/Default contains the title of the tiddler containing the default tiddler info tab. The default value is This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Used in Internet protocols to indicate the type that should be used to interpret the content of a web resource. In TiddlyWiki, the The contrastcolour macro returns whichever of two given CSS colours is deemed to contrast best with another. An example can be seen in the template tiddler for tag pills. We welcome contributions to the code and documentation of TiddlyWiki in several ways: There are other ways to help TiddlyWiki too. Like other OpenSource projects, TiddlyWiki5 needs a signed contributor license agreement from individual contributors. This is a legal agreement that allows contributors to assert that they own the copyright of their contribution, and that they agree to license it to the UnaMesa Association (the legal entity that owns TiddlyWiki on behalf of the community). Create a GitHub pull request to add your name to step by step The CLA documents used for this project were created using Harmony Project Templates. "HA-CLA-I-LIST Version 1.0" for "CLA-individual" and "HA-CLA-E-LIST Version 1.0" for "CLA-entity". Remarks
----— In this case, please clearly state so, since otherwise we assume that you are the legal copyright holder of the contributed work! Please provide links and additional information that clarify under which license the rest of the code is distributed.
We welcome contributions to the code and documentation of TiddlyWiki in several ways: There are other ways to help TiddlyWiki too. Like other OpenSource projects, TiddlyWiki5 needs a signed contributor license agreement from individual contributors. This is a legal agreement that allows contributors to assert that they own the copyright of their contribution, and that they agree to license it to the UnaMesa Association (the legal entity that owns TiddlyWiki on behalf of the community). Create a GitHub pull request to add your name to step by step The CLA documents used for this project were created using Harmony Project Templates. "HA-CLA-I-LIST Version 1.0" for "CLA-individual" and "HA-CLA-E-LIST Version 1.0" for "CLA-entity". Remarks
----— In this case, please clearly state so, since otherwise we assume that you are the legal copyright holder of the contributed work! Please provide links and additional information that clarify under which license the rest of the code is distributed.
This file was automatically generated by TiddlyWiki5
Like other OpenSource projects, TiddlyWiki5 needs a signed contributor license agreement from individual contributors. This is a legal agreement that allows contributors to assert that they own the copyright of their contribution, and that they agree to license it to the UnaMesa Association (the legal entity that owns TiddlyWiki on behalf of the community). The following individuals have generously given their time to contribute to the development of TiddlyWiki: You can copy an individual tiddler from one TiddlyWiki file to another by dragging a link to the tiddler from one browser window to another.
The following variables are built into TiddlyWiki's core: The core will also use various configuration variables and macros if you define them: The number of the entries in the input list is counted and a decimal representation returned as a single string. The count widget displays the number of matches to a specified filter expression. The content of the To create a custom export format that exports tiddlers as their raw body text: The variable You create a tiddler either by clicking the button in the sidebar, or by clicking on a link to a missing tiddler. Links to missing tiddlers are shown in blue italics. See also: To edit an existing tiddler, click the button at the top right of the tiddler. When you create a new tiddler or edit an existing one, the tiddler will go into draft mode. This presents a control panel for modifying the tiddler in various ways. It has several parts, from top to bottom: When you have finished editing, click a button at the top right of the tiddler: Journal tiddlers are tiddlers that use a date and/or time as their title. They are typically used as a quick way to record time-stamped information. You can use additional tags on a journal tiddler to link it to other tiddlers, helping to establish the relationships between items of information. For example, you might use a journal tiddler called 10th October 2014 to record thoughts and information captured on that particular day. The tags Shopping and London might be used to indicate that the entry concerns shopping in London. The easiest way to create a journal tiddler is to use the new journal button in the Tools tab of the sidebar. If you find yourself often using the button, click the checkbox next to it to make the button available just above the search box. The new journal button creates a journal entry as a blank tiddler with the tag Journal and a title derived from today's date. If a journal tiddler with that title already exists, then this is opened for editing. A common sequence of actions is to create (or reopen) today's journal entry and tag it with the title of another tiddler. This can be done with the new journal here button in the other tiddler's toolbar. You can find this button in the Tools tab of the tiddler's InfoPanel. For example, you might be reviewing a tiddler called Oxford Street and realise that it's relevant for planning your shopping trip. Click the new journal here button on the Oxford Street tiddler to bring up a journal entry tagged with Oxford Street. To configure how new journal entries are created, visit the Basics tab under Info in the control panel : Hint: if you want to create a separate journal tiddler whenever you click new journal (even if you do this several times in the same day), you can include the clock time in the title format. Specify something like Another useful trick is to include Visit the Making a custom journal button tiddler for instructions on how to make your own custom New Journal button This example shows how to create a sub-story within a tiddler that is independent of the main story. Here's the code: Note how you can open the HelloThere tiddler in the substory by clicking on the link below. Links within the substory open within the substory, and not in the main story. Click this link to get started: HelloThere The csvtiddlers macro returns the fields of a selection of tiddlers in CSV form, with one record (row) per tiddler. An example can be seen in the template tiddler for CSV exports. The current tiddler provides the context in which several aspects of WikiText are interpreted. For example, The title of the current tiddler can always be found in the The two most common ways in which the current tiddler is changed are: The current tiddler is therefore often not the same as the tiddler that is being viewed or edited.
The currentTiddler variable contains the title of the current tiddler. Several aspects of WikiText use this tiddler as their context. As a result, within a Compare The following two examples have the same meaning: This next example shows how the Information about customising TiddlyWiki By default, the results for the sidebar search box are displayed as a simple list of tiddler titles. The search results can be customised by adding plugin visualisations that show the search results in different ways. (Tabs are shown automatically if an additional search result visualisation is detected). Search result visualisations are stored in tiddlers tagged $:/tags/SearchResults. The default search result listing is implemented in the system tiddler $:/core/ui/DefaultSearchResultList. To create a new search result visualisation: If you'd like the new visualisation to be the default, create a tiddler called $:/config/SearchResults/Default containing the title of the tiddler containing the search visualisation that you want to display by default. Here is an example of an alternative visualisation that displays results in reverse chronological order: By default, a TiddlyWiki on Node.js instance using a wiki folder will create new tiddler files by using the sanitised and disambiguated title as filename. This can be customised by creating a tiddler $:/config/FileSystemPaths containing one or more filter expressions, each on a line of its own. Newly created tiddlers are matched to each filter in turn, and the first output of the first filter to produce any output is taken as a logical path to be used for the tiddler file. Logical paths don't include the In both cases, the characters This will store newly created system tiddlers in Thus, $:/config/FileSystemPaths itself will end up in The final A data URI is a way of storing data (such as an image) in a way that is compatible with the addresses used by web pages and stylesheets to access external resources. The A data tiddler is a miniature database contained within a tiddler. There are two standard formats: Other formats of tiddler can also be parsed to yield blocks of data that behave like data tiddlers. Use a TextReference to look up the value of a named property. For example, if a DictionaryTiddler called ... then The same is true if Note: It is currently only possible to retrieve data from the immediate properties of the root object of a JSONTiddler. The widgets ActionSetFieldWidget and ActionListopsWidget can manipulate named properties of data tiddlers by indicating the name of the property in the $index attribute. To create or modify a named property with ActionSetFieldWidget, provide a $value attribute. To delete a named property with ActionSetFieldWidget, omit the $value attribute. ActionListopsWidget assigns the named property the list constructed through its $filter and $subfilter attributes.
The datauri macro returns a data URI for the content of a tiddler. It is often used in stylesheet tiddlers to reference things like inline images and fonts: The data URI is automatically base64-encoded in the case of a non-text tiddler. The example has to invoke Certain fields of a tiddler are used to store dates and times. The two standard date fields are Values of date fields are 17-character strings: To avoid problems arising from differences of time zone, TiddlyWiki always uses UTC. As an example, the Dates can be converted to other formats for display: That renders as: 토요일 17일 1월 2015
The ViewWidget accepts a Note that other text is passed through unchanged, allowing commas, colons or other separators to be used. An interactive date picker plugin based on Pikaday. A demo can be found here: http://kixam.github.io/TW5-datePicker/. datepicker is a TiddlyWiki plugin that allows you to use a widget much like EditTextWidget to pick a date, and optionaly a time. It shows a nice interactive mini-calendar when clicked, allows you to set a date format for display, and is compatible with core date fields such as Select tiddlers where a specified date field (default "modified") is withing a specified date range. Time portion is ignored. The filter can be used to highlight new items in a list. For example:
That renders as: "HTML decoding" means replacing HTML entities that represent special characters with that character: See Mozilla Developer Network for details of the decodeURIComponent operation. These are definitions of technical words and phrases used in this documentation. (As distinct from the Concepts that make up TiddlyWiki itself). HTML definition lists are created with this syntax: That renders as: ... and the underlying HTML is: Die deutsche Übersetzung von TiddlyWiki ist verfügbar unter: Siehe auch: Deutsch (Österreich) Edition.
Die österreichische Übersetzung von TiddlyWiki ist verfügbar unter: Siehe auch: Deutsch (Deutschland) Edition.
There are several resources for developers to learn more about TiddlyWiki and to discuss and contribute to its development. A dictionary tiddler is a data tiddler containing a simple list of name/value pairs. Its ContentType is The ColourPalettes, such as the default Vanilla palette, are dictionary tiddlers.
Plugins can be disabled by creating a tiddler titled For example, to disable the plugin You've never seen anything like TiddlyWiki. TiddlyWiki is: TiddlyWiki is first and foremost a tool: it is a free downloadable tool for capturing and organising content from the web, from your documents or from your brain. It is a tool for note-taking, bookmarking, pinning, writing, managing to-do lists and projects, collaborating, blogging, and publishing. In TiddlyWiki you create or paste content into notes called tiddlers, then connect your tiddlers with hyperlinks and tags. You can then quickly retrieve your notes through features such as tag pills, sidebar tabs, and TiddlyWiki's lightning fast search window. You can even dynamically include one tiddler's content inside another - similar to using building blocks - to create articles, lists, presentations and more. In addition to being a versatile tool, TiddlyWiki is also a toolbox. Where other note-taking products hook you with the basic program then charge you for the really helpful features, TiddlyWiki has an ever-expanding collection of completely free visual themes, colour palettes, plugins, widgets and macros, which you can then mix and match so that you can tweak and tailor your TiddlyWiki to get it just the way you want it. We are a community of users and developers who help each other imagine new ways of thinking and organising and create new solutions, so that TiddlyWiki is continually adapting to better serve your needs. TiddlyWiki users and developers share questions and advice at a TiddlyWiki Google group. They also create tutorials, adaptations, and plugins to enhance your TiddlyWiki experience. See the section Community of the TableOfContents for more details. The purpose of taking and organising a note (or recording any kind of content) is to be able to retrieve it later. If you can't find your notes in your note-taking system, your note-taking becomes a colossal waste of time. The TiddlyWiki philosophy is that the best way to take notes is to separate them into tiddlers, the smallest semantic units possible. A tiddler might be an image, a webpage link, a concept, the definition of a term, or a specific customisation such as a macro. These tiddlers can then be woven together to create longer units: stories, articles, lists, image galleries, and much more. TiddlyWiki's features such as tagging, hyperlinking, and filters are specially designed to help you relate and connect tiddlers together in multiple ways, facilitating your future retrieval of your notes and even helping you see unexpected relationships among your tiddlers and the information they contain.
The DOM of a web page is a tree-shaped model of its content, maintained internally by the web browser as the user interacts with that content. Each point in the tree is called a node. When TiddlyWiki is running in a web browser, its widgets are rendered into DOM nodes for display. When TiddlyWiki is running on Node.js, it uses a fake DOM to simulate the behaviour of a browser.
The following macros are used throughout TiddlyWiki's documentation. Their names start with a dot to keep them out of the way of names that a user might try experimenting with. The documentation for TiddlyWiki tries to follow a consistent editorial style. It has two main areas, each with its own tone and audience: We keep the two areas distinct. This avoids overwhelming relative newcomers, while still providing quick access to the information that expert users need. Additional topics: Filters manipulate sets of titles in which no title may appear more than once. Furthermore, they often need to append one such set to another. This is done in such a way that, if a title would be duplicated, the earlier copy of that title is discarded. The titles being appended are dominant. For example, if a selection contains Tiddlers that have a Several features work in concert to give the desired behaviour for draft tiddlers: The dropzone widget creates an area into which the user can drag files and other objects. It also supports pasting via the clipboard, although browser support is currently limited. It sends a WidgetMessage: tm-import-tiddlers carrying a JSON representation of the tiddlers to be imported up through its parents. This message usually trapped by the NavigatorWidget which adds the tiddlers to the store and updates the story to display them. The dropzone widget has no attributes, and displays any contained content within the dropzone. The dropzone widget creates an HTML The following data transfer types are supported: The dumpvariables macro returns a table showing the values of all variables and macros that exist at that position in the widget tree. It is useful for debugging and exploring TiddlyWiki's internals. Placeholders are replaced with values in the normal way, but using the default values for all macro parameters. (none) Each input title is processed in turn. The value of field If a tiddler does not contain field For an example of using the Each input title is processed in turn. The value of field If a tiddler doesn't contain field For an example of using the La edición española de TiddlyWiki se encuentra aquí: The edit bitmap widget provides a user interface in the browser for editing bitmap tiddlers. It is currently a primitive proof-of-concept, supporting resizing and painting with a single color and line width. The content of the The edit bitmap widget can be configured with these system tiddlers: Michael Fogleman has written an Emacs major mode called tid-mode, which is for editing TiddlyWiki .tid files. It is derived from text-mode, uses the useful minor modes org-struct and subword, and updates the modified times when you save a .tid file. He also wrote two helper functions for using TiddlyWiki in Emacs. The first opens a tiddlers directory in Dired; the second opens TiddlyWiki in the browser. This latter function may require specifying a browser: You can bind either of these functions with the global-set-key function: At the moment, these are not integrated into tid-mode.
Devin Weaver has written a Vim plugin at https://github.com/sukima/vim-tiddlywiki It supports most of the TiddlyWiki syntax and includes a filetype plugin which will auto update the La traduction en Français (France) de TiddlyWiki démarre ici : Each input title is processed in turn, ignoring any that is not the name of a TiddlyWiki edition. TiddlyWiki is distributed in several distinct editions that are tuned for specific purposes. An edition consists of the TiddlyWiki core components along with plugins, documentation and sample content to get you up and running as quickly as possible. You can mix and match the components of these editions, to make a unique solution for your particular application. The edit text widget provides a user interface in the browser for editing text tiddler fields. The editing element is dynamically bound to the underlying tiddler value: changes to the tiddler are instantly reflected, and any edits are instantly propogated. By default, applying the EditTextWidget to the The content of the One trap to be aware of is that the edit text widget cannot be used to edit a field of the tiddler that contains it. Each keypress results in the tiddler being re-rendered, which loses the cursor position within the text field. Instead, place the edit text widget in a template that references the tiddler you want to modify. For example, if you wanted the tiddler GettingStarted to edit the value of the "myconfig" field of the tiddler "AppSettings", you might do so by creating a separate tiddler "ChangeAppSettings" that contains the following: And reference the template in any other tiddler (e.g. GettingStarted) with This works when your use of the tiddler is not the AppSettings itself which would cause a recursion problem. In this latter case you have to save the fields to a temporary (or alternative) tiddler (sort of the reverse of above) like so: In short the EditTextWidget can not change properties of the tiddler it is embedded in or part of. It can only change fields of other tiddlers. One could use ShadowTiddlers to accomplish the field storage if needed.
The edit widget provides a general purpose interface for editing a tiddler. It dynamically chooses the appropriate widget depending on the type of the tiddler (currently either the EditTextWidget or the EditBitmapWidget). The content of the The "empty" edition of TiddlyWiki is a vanilla distribution, with no additional plugins or configuration beyond the core code. The empty edition can be downloaded from: Your browser may ask you to accept the download before it begins
"HTML encoding" means replacing special HTML characters with the corresponding HTML entity: See Mozilla Developer Network for details of the encodeURIComponent operation. When used as a single HTML file, TiddlyWiki5 allows content to be encrypted using the Stanford JavaScript Crypto Library. Note that TiddlyWiki has two other unrelated features concerned with passwords/encryption: The encrypt widget renders a filtered list of tiddlers to an encrypted block with the password currently held in the PasswordVault. The encrypted block can subsequently be decrypted by the TiddlyWiki5 BootMechanism. See the EncryptionMechanism for more details. The content of the TiddlyWiki on Node.js supports the following OS environment variables for specifying a colon-delimited list of paths to search for plugins and editions: The additional paths should each point to folders structured like the equivalent directories in the TiddlyWiki5 GitHub repository: the plugin, theme and language directories contain For example: See Mozilla Developer Network for details of the regular expression syntax. I collect my tw5 creations on-line as http://eucaly-tw5.tiddlyspot.com/ Available Plugins :
Select a topic in the table of contents. Click the arrow to expand a topic.
Select a topic in the table of contents. Click the arrow to expand a topic. This collection showcases inspiring and interesting examples of TiddlyWiki being used in the wild. Submit new entries to this collection via GitHub, Twitter or by posting in the TiddlyWiki Groups. A personal website built with TiddlyWiki. TriTarget.org is a name I came up with in high school. I was big into computer programming and wanted a company name that was kinda catchy. When I made a few programs in BASIC I would brand them with TriTarget as a way to show off my company (Even though I didn't have one).
A git choose-your-own-adventure!ⓡ for walking yourself though fixing a broken Git repository. http://sukima.github.io/GitFixUm/ This document is an attempt to be a fairly comprehensive guide to recovering from what you did not mean to do when using git. It isn't that git is so complicated that you need a large document to take care or your particular problem, it is more that the set of things that you might have done is so large that different techniques are needed depending on exactly what you have done and what you want to have happen.
A system for lesson planning built with TiddlyWiki. I built a program to help enter and store lesson plan information and then facilitate/automate some of the tedious work involved in creating the actual lesson plan document.
A simple game built with TiddlyWiki, introduced in this post. http://zorklike.tiddlyspot.com I decided to see if it was possible to make some sort of game using only the core tiddlywiki with no plugins or javascript. I made a very bare bones zork/interactive fiction type game. It is currently the simplest thing I could make and claim it was a game, but I may add on to it in the future. It uses the 5.1.5 prerelease because the action-setfield widget saved lots of work making macros. One goal of this is to use nothing besides what is contained in the core tiddlywiki, so there is no javascript and no plugins.
A fast Forth interpreter for the Commodore PET, written in 6502 assembly language. The TiddlyWiki containing program documentation is automatically generated from the source code: see https://github.com/chitselb/pettil. http://chitselb.com/files/tiddlypettil.html Objectives of the project are, in no particular order: An introduction to the biblical book of Obadiah by Dave Gifford using the table of contents macro and various custom tweaks to TiddlyWiki: custom new here buttons, this custom viewtemplate addition to add notes or images within any tiddler, and a tiddler transcluding all the content, in order to facilitate printing (this tiddler). A thesis notebook based on TiddlyWiki. This is an example of a thesis notebook powered by TiddlyWiki 5.0.8-beta. TiddlyWiki is a great piece of software created by Jeremy Ruston. It allows you, among other things, to take notes, organize ideas, store information, and display all your stuff the way you want. It is an incredibly flexible tool you can adapt to fit almost all your needs. This TiddlyWiki has been customized to serve as a philosophy notebook centered around authors, books and papers, concepts and theories, and personal notes. I use it along with Zotero, which is a dedicated bibliography software. Both are free, open source projects. TiddlyWiki can be downloaded at http://tiddlywiki.com.
External images in TiddlyWiki are tiddlers that point to the URI of an image, rather than embedding the full image data. They can perform better than embedded images, particularly with large numbers or sizes of images. However, using them breaks the single file pattern of TiddlyWiki. External images are used in the browser. They can be created by the Node.js configuration when it builds a TiddlyWiki, or they can be created manually within the browser. An external image is an ordinary image tiddler that has a _canonical_uri field containing the URI of the image. The URI can be absolute or relative to the HTML document. If the canonical URI is provided then the text field of the tiddler is ignored and so should be omitted. To manually create an external image just create the tiddler with the appropriate image content type, and add a _canonical_uri field with a URI pointing to the actual image location. IMPORTANT: Double-check your spelling. The following steps are used to create a static HTML file version of a wiki accompanied by an images folder containing the referenced external images: Note the image files must be saved before they are externalised. Externalising them destroys the text field within the in-memory copy of the wiki store, meaning that attempts to save them will fail. For an example see the externalimages build target of the demo tw5.com wiki: The following Two The template tiddler $:/core/templates/canonical-uri-external-image contains: Note that these operations modify the tiddlers in the wiki store and so may affect the operation of subsequent commands. You can't edit an external image directly in the browser except by changing the URI field to point to a different image.
Further information about specific TiddlyWiki features: Last but not least, TiddlyWiki is a rare example of a practical quine
Federatial Limited is a software consultancy founded by JeremyRuston specializing in understanding the impact of the web on the way that we work together. See http://federatial.com/ and http://twitter.com/federatial for more information.
Fetch one or more files over HTTP/HTTPS, and import the tiddlers matching a filter, optionally transforming the incoming titles. With the "file" variant only a single file is fetched and the first parameter is the URL of the file to read. With the "files" variant, multiple files are fetched and the first parameter is a filter yielding a list of URLs of the files to read. For example, given a set of tiddlers tagged "remote-server" that have a field "url" the filter The The Preceding the Note that TiddlyWiki will not fetch an older version of an already loaded plugin. The following example retrieves all the non-system tiddlers from http://tiddlywiki.com and saves them to a JSON file: If The syntax of a filter step treats any unrecognised filter operator as if it was the suffix to the The field mangler widget manipulates the fields and tags of a tiddler. It does so in response to the following Messages: The field mangler widget displays any contained content, and responds to Messages dispatched within it. Each input title is processed in turn. Its list of field names is retrieved (in no particular order) and then dominantly appended to the operator's output. The fields widget renders each field of a specified tiddler through a simple text template. A list of fields to exclude can be provided. It is used internally by TiddlyWiki5, notably by the FileSavingMechanism. The provided template is rendered with the following special substitutions: The content of the The A filter expression is the outermost level of the filter syntax. It consists of one or more runs. A run's input is normally a list of all the non-shadow tiddler titles in the wiki (in no particular order). But the In concise technical terms: A filter operator is a predefined keyword attached to an individual step of a filter. It defines the particular action of that step. Important: Each first step of a filter run not given any input titles receives the output of [all[tiddlers]] as its input. The following table lists all core operators, the most common ones marked ✓. The last column indicates whether an operator allows negation using the A typical step is written as Most steps process the selection of titles that are supplied as their input, but a few construct an entirely new selection instead. For the exact rules, see Filter Syntax. The parameter to a filter operator can be: A run consists of steps, and it outputs a selection that contributes to a larger filter expression. The steps are processed from left to right. The input to the first step is same as the input to the run. For each subsequent step, the input is the output of the previous step. The output of a filter step depends on its operator: A good example of a constructor is The lower three options in the diagram match syntax like The quoted options exist to support titles that contain square brackets, as in A step represents a single operation within a filter. In programming terms, it is akin to a function call to which the step's input is passed as an implicit parameter. A step's output is a selection that contributes to a run and hence to the entire filter expression that contains it. The step's operator is drawn from a list of predefined keywords, which can be extended by plugins. Any unrecognised operator is treated as if it was the suffix to the The suffix is additional text, often the name of a field, that extends the meaning of certain operators. Many steps require an explicit parameter value, also known as an operand, that further defines what the step is to do.
A filter is a pipeline for transforming an input into an output. Both the input and the output are ordered sets of titles of things like tiddlers and fields. Filters are expressions constructed from smaller building blocks, called runs and steps, each of which also transforms an input to an output. A filter starts with an empty output. Its runs are processed from left to right, progressively modifying the output. Here are details of the various building blocks involved: You can think of TiddlyWiki as a database in which the records are tiddlers. A database typically provides a way of discovering which records match a given pattern, and in TiddlyWiki this is done with filters. A filter is a concise notation for selecting a particular set of tiddlers, known as its output. Whenever TiddlyWiki encounters a filter, it calculates the output. Further work can then be done with just those tiddlers, such as counting or listing them. The following example passes a filter to the A filter's output can change as tiddlers are added and deleted in the wiki. TiddlyWiki recalculates on the fly, automatically updating any filter-based counts or lists as well. Advanced Search has a 필터 tab that makes it easy to experiment with filters. This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. These examples make use of the Days of the Week tiddler. This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Available character formatting includes: See also: Code Blocks in WikiText
Sometimes you want the results of a In the first, outer list structure you must provide a count to indicate at item number rows should occur. So, in the following example, each row breaks after 4 items, so the sequence is 1,5,9, etc. Note that this requires you to know in advance the maximum number of items there will be. There is also an internal limit that is set to n-1 items, where n is the number of columns you want. Note also that you need to repeat the driving filter operator inside of the internal For other table-making techniques see also: Sometimes you want the results of a For other table-making techniques see also: Note the various places you need to indicate the number of columns Sometimes you want the results of a You don't directly specify a fixed number of columns but instead specify the max-width for the list (which could be a transclusion of the tiddler width) and the width for each item. It lists from left to right, then wraps to a new row. For other table-making techniques see also: Within the text of a tiddler you can use special formatting called WikiText to control how the text is displayed. At its simplest, WikiText lets you use familiar word-processing features like bold, italic, lists and tables. For example: … displays as: The quick brown In WikiText, you can link to tiddlers using double square brackets, or by taking advantage of the automatic linking of CamelCase words: … displays as: This is a link to HelloThere, and one to History of TiddlyWiki Macros let you package repetitive fragments of WikiText so that you can easily reuse them. For example, here is the definition of a macro that generates a YouTube video URL from its unique identifier: With that definition in place, Advanced WikiText features allow you to produce automated lists and interactive features like dropdown menus. In fact, the entire user interface of TiddlyWiki itself is written in WikiText, so any feature that you see in TiddlyWiki can be adapted for use in your own wikis. Some of the advanced features require complex coding. TiddlyWiki includes several built-in macros that simplify common user interface tasks, like tabs, tables of content, and lists of tiddlers. See WikiText for a detailed introduction to writing WikiText.
The TiddlyWiki discussion groups are mailing lists for talking about TiddlyWiki: requests for help, announcements of new releases and plugins, debating new features, or just sharing experiences. You can participate via the associated website, or subscribe via email. Note that you do not need a Google Account to join the discussion groups. Subscribe by sending an email to mailto:tiddlywiki+subscribe@googlegroups.com or mailto:tiddlywikidev+subscribe@googlegroups.com. Note that you do not need a Google Account to join the discussion groups. Subscribe by sending an email to mailto:tiddlywiki+subscribe@googlegroups.com or mailto:tiddlywikidev+subscribe@googlegroups.com. New releases of TiddlyWiki, TiddlyDesktop and TiddlyFox are announced via the discussion groups and Twitter (you can also subscribe to an Atom/RSS feed of TiddlyWiki releases from GitHub) There is also a discussion group specifically for discussing TiddlyWiki documentation improvement initiatives: http://groups.google.com/group/tiddlywikidocs
This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. The "full" edition of TiddlyWiki consists of all the available languages, themes and plugins for TiddlyWiki. It is intended for use in testing TiddlyWiki - in particular, for switching between all the available language plugins. The full edition can be downloaded from: TiddlyWiki is designed with the long term needs of its users in mind. Because it is OpenSource and needs no infrastructure, we can be confident that all we'll need to access a TiddlyWiki file even in the far future is an ordinary HTML browser. If you're starting to use TiddlyWiki at the beginning of your career you can be confident that it will carry you through to retirement. TiddlyWiki5 can be used to generate static HTML representations of a TiddlyWiki that doesn't need JavaScript. There is much flexibility in how the static HTML is generated. The following scenarios are all illustrated on http://tiddlywiki.com. You can explore a static representation of this TiddlyWiki at static.html. That file is a static snapshot of the current DefaultTiddlers. Any tiddlers that it links to are referred to via URLs of the form The following commands are used to generate the sample static version of the TiddlyWiki5 site: The first RenderTiddlersCommand generates the HTML representations of individual tiddlers, the second RenderTiddlerCommand saves the static version of the DefaultTiddlers, and the final RenderTiddlerCommand saves the stylesheet. (All the files are placed in the It is also possible to produce a single HTML file that contains static representations of tiddlers, and uses standard HTML anchor links to jump between them. For example: alltiddlers.html The example is built by the following commands: Each input title is processed in turn. If the corresponding tiddler contains field Unlike most other Filter Operators, the selection output by Each input title is processed in turn, and is ignored if it does not denote a data tiddler. If the tiddler contains property This brief tutorial takes you through the basics of saving changes with a standalone TiddlyWiki file. Note that the video is a bit out of date, and will be updated soon! Brief instructions for getting started on the different platforms and configurations that TiddlyWiki supports. See the A Gentle Guide to TiddlyWiki for a more leisurely introduction.
Troubleshooting: See also: If the button doesn't work save this link: http://tiddlywiki.com/index.html Your browser may ask you to accept the download before it begins
There are three options for using TiddlyWiki on Android: (Alternatively, see the video tutorial) (to save the link, ensure you've installed the "save-link-menus" extension and then long-press on the link and choose "Save link") The AndTidWiki app for Android devices makes it possible to edit and save changes to TiddlyWiki5, including working offline without a network connection. Download it here. Instructions for use: Note: You can save your changes by clicking the save changes button in the sidebar even if you have not clicked the ok button to complete editing a tiddler Note that AndTidWiki is published independently of TiddlyWiki Termux is an open source Android application that combines a Linux system and a terminal. Once you open Termux on your Android system, it is straightforward to install and run the Node.js flavour of TiddlyWiki from the command line. From then on, as long as Termux is not closed, you may access your wiki anytime from your favourite Web browser pointing on the expected address and port. note to contributors: in Termux, you may as well install git, emacs or vi, in order to edit and maintain individual tiddler files. This would probably require that you also attach a more powerful keyboard to your Android, like the Hacker's Keyboard application or a Bluetooth external device. TiddlyWiki on Google Chrome can only save changes using the HTML5-compatible fallback saver module. This method of saving changes is clunky because it requires manual intervention for each save. It has the advantage of working on almost all desktop browsers, and many mobile browsers. If the button doesn't work save this link: http://tiddlywiki.com/empty.html Your browser may ask you to accept the download before it begins Tip: most browsers have an option to prompt each time for the download location. This allows you to select the existing version of the file and replace it.
Firefox provides the best user experience for using TiddlyWiki with the TiddlyFox browser extension. If you're using Firefox for Android, see the instructions for Saving with TiddlyFox on Android. You may also see a prompt to enable the Microsoft Script Runtime The Windows HTA Hack describes an alternative method of using TiddlyWiki with Internet Explorer. The iPad/iPhone app TWEdit makes it possible to edit and save changes to TiddlyWiki5, including working offline without a network connection. Download it here. Instructions for use: Note that TWEdit is published independently of TiddlyWiki If it fails with an error you may need to re-run the command as an administrator: The If you are using Debian or Debian-based Linux and you are receiving a Example Debian v8.0: TiddlyWiki can also be hosted on online services such as Dropbox and Cloudant. TiddlyWiki on Safari can only save changes using the manual HTML5-compatible fallback saver module. This method of saving changes is clunky because it requires manual intervention for each save. If the button doesn't work save this link: http://tiddlywiki.com/empty.html Your browser may ask you to accept the download before it begins If hosted on a WebDAV-enabled server, TiddlyWiki will automatically save changes via HTTP. Many NAS or Subversion servers support WebDAV out of the box. Setting up your own server might take some effort though: dav-server is a quick way to serve up a folder of HTML TiddlyWikis. webdav server for Android lets you put wikis in your pocket. You can share with other devices on the local network too. WebDAV support was added Feb 16 2016. If you created your wiki before that, you'll need to Upgrade to enable WebDAV. None of the WebDAV hosting services tested ( GitHub is a hosting service for distributed projects that use git as their version-control system. It allows free hosting and management of open-source projects and facilitates collaborative developement on the source code. Using GitHub for non-open-source endeavors requires additional fees. The code and documentation of TiddlyWiki is hosted on GitHub at: The following sidebar tabs give examples of grouped lists created by nesting. For the Types tab, the outer list filter as shown below selects each discrete value found in the The list in the Recent tab is generated using the TiddlyWiki makes a great GuerillaWiki in situations where it is not practical to use a traditional wiki. For instance, in a corporate setting, persuading an over-worked IT department to install a Wiki server for you is seldom going to be possible overnight. And if your PC is locked down you can't install a conventional Wiki yourself. Equally, you can't go and use one of the public hosted Wiki services because your Information Security department would not allow all that corporate data to flow into an outside server. TiddlyWiki slices through those barriers by being usable on virtually all PCs.
A hard link is one that can be detected by a superficial examination of WikiText. A link is soft if it is: The usual handling of paragraphs in wikitext causes single line breaks to be ignored, and double linebreaks to be interpreted as the end of a paragraph. This behaviour isn't convenient when dealing with material that incorporates hard linebreaks - for instance, poetry. You can mark a block of content as containing hard line breaks like this: That renders as: This is a line ... and the underlying HTML is: A tiddler is deemed to have been modified if it has been written back to the wiki since the start of the current TiddlyWiki session. If you edit a tiddler and immediately store it again without making any changes, that is enough to mark it as modified. Have you ever had the feeling that your head is not quite big enough to hold everything you need to remember? Welcome to TiddlyWiki, a unique non-linear notebook for capturing, organising and sharing complex information. Use it to keep your to-do list, to plan an essay or novel, or to organise your wedding. Record every thought that crosses your brain, or build a flexible and responsive website. Unlike conventional online services, TiddlyWiki lets you choose where to keep your data, guaranteeing that in the decades to come you will still be able to use the notes you take today. If you find TiddlyWiki useful, there are lots of ways you can help assure its future and make it better. OpenSource projects like TiddlyWiki thrive on the feedback and engagement of users. TiddlyWiki becomes more useful to everyone as more and more people use it. So, if you find TiddlyWiki useful, spread the word. The best possible way to assure its future is for it to become a hundred times more popular than before. There are many ways you can contribute to TiddlyWiki: The main TiddlyWiki documentation and code lives on GitHub, and welcomes contributions: When TiddlyWiki first opens in the browser the search box is automatically given the focus by default. If this causes problems, you can change the default by changing this value from true to false: New in 5.1.14 Controls the minimum length of a search string before results are displayed. Defaults to "3". TiddlyWiki defers processing changes to draft tiddlers until a timeout has elapsed. The default value of 400ms gives a good balance of responsiveness in most cases but isn't always optimal on lower powered mobile devices. The timeout can now be changed by changing this value (in milliseconds): The most useful configuration settings for TiddlyWiki are exposed in the control panel but some more advanced settings do not have a full user interface. Instead, the underlying configuration tiddlers are edited directly. To change these settings on an empty TiddlyWiki, you can drag the links to the individual configuration tiddlers directly from this wiki into yours. The Highlight plugin provides the ability to apply syntax colouring to text. These are personal reflections on the history and development of TiddlyWiki from JeremyRuston. There is also a podcast discussing TiddlyWiki's backstory. Back in 1997 a colleague introduced me to Ward Cunningham's original wiki. I was impressed that something so powerful could fit into just 700 lines of Perl, and fascinated by the radical reimagining of security and permissions. Like many other developers, I took every opportunity I could to try out various wikis, and to explore their use at work. The allure of the wiki for me was the feeling that it could eventually disrupt the prevailing paradigm of print-oriented documents and emails. After watching people use wikis for a few years, I noticed that power users made extensive use of the ability to open multiple wiki pages at once in several browser tabs, making it easier for them to compare and review pages, to copy text between them and to act as a sort of queue of pages yet to be read. I felt that this ability to manipulate multiple pages at once was central to the ability to refactor a wiki, and it is generally accepted that a wiki that is lovingly refactored tends to be more useful. And yet, standard wiki user interfaces have always been designed exclusively for the presentation and manipulation of single pages at once. All of these thoughts came together when I saw GMail in April 2004, which used Ajax cleverly to blend individual emails into threaded conversations. I started experimenting with HTML and JavaScript to explore the idea further. I'd had virtually no experience of either, just having put together some static pages and simple ASP sites in previous lives. Getting my head around these client-side technologies was painful; like everyone else, I was horrified to discover how appalling were the incompatibilities and inconsistencies of web programming. So, in September 2004 I released a primitive first version of TiddlyWiki. It was the smallest possible thing that demonstrated the idea: it was a simple, self-contained static 48KB HTML file. The downside of writing the first version of TiddlyWiki in this way was that it made it completely impractical to use for editing - when you click 'save changes' it just pops up a window showing the data that would be saved if it were possible for an HTML page to write to the file system. Much of the early feedback was that TiddlyWiki was neat, but that it would be more useful when it was possible to properly save changes. I was a little frustrated, as I thought I knew that it was impossible for an HTML file running in the browser to save changes to the local file system. Within a few months I saw an experimental Firefox extension that enabled TiddlyWiki to save changes in the browser. Examining the code, I realised that the APIs that it used to write to the file system were actually available in ordinary HTML files - as long as they were loaded via a I adapted the Firefox code into the core of TiddlyWiki, and soon added a similar ability for Internet Explorer (making use of an old ActiveX control that Microsoft distributed with Internet Explorer). A major milestone in the growth of TiddlyWiki was the creation of "GTDTiddlyWiki" by Nathan Bowers. He took the vanilla TiddlyWiki product and adapted it for the specific application of keeping track of tasks using the popular Getting Things Done methodology. GTDTiddlyWiki was an immediate hit, being enthusiastically greeted on websites like LifeHacker. Over the next couple of years TiddlyWiki continued to grow in popularity, and gained new features and capabilities. Within a year I was able to support myself by performing bespoke development work on TiddlyWiki, notably working with wiki pioneer SocialText on the ability to synchronise changes with an online server In May 2007, BT acquired Osmosoft, my consultancy company. It was an unusual decision to acquire a company with a single employee and a tiny trickle of revenue - Osmosoft didn't even own the intellectual property in TiddlyWiki since I had handed it over to UnaMesa to assure its future for the community. BT's motivation was to help them understand community-based ecosystems. I joined the organisation as "Head of Open Source Innovation", taking responsibility for open source governance, and providing advice and expertise on how to participate in open soure communities. I built a team in BT under the name Osmosoft. Our purpose was to evangelise the benefits of open source, and to help other teams realise those benefits in practice. We also found that it was necessary to evangelise the use of the web in general, and web standards in particular. Our approach was to focus on showing rather than telling. We worked with the TiddlyWiki community to extend the ecosystem and we built numerous internal systems for BT (some based on TiddlyWiki and some not). Osmosoft's chief contribution to the TiddlyWiki community was the creation of TiddlyWeb and TiddlySpace. TiddlyWeb was a robust, internet scale server for tiddlers that could also compose TiddlyWiki views of those tiddlers. TiddlySpace was an attempt to package TiddlyWeb into a more directly usable form. By the end of 2011 I was increasingly feeling that I would be better placed to realise the potential of TiddlyWiki outside of the corporate confines BT. Accordingly, I left and started work as an independent developer, primarily working on a brand new reboot of TiddlyWiki in the shape of TiddlyWiki5. I worked on new release of TiddlyWiki from November 2011. As a programmer, working on "version 2.0" of something that I had already written is a very attractive proposition. It means that the requirements were fully understood, allowing me to focus on evolving the architecture needed to support the desired functionality. Now that TiddlyWiki5 has finally left "beta" status behind, my hope is that it will have a long life. Because it only uses standard features of HTML5 and Node.js, there is no reason why it cannot be fully operational for many years to come. My goal is for it to last for at least 25 years. Jeremy Ruston, 20th September 2014 The system tiddler $:/HistoryList keeps track of a list of tiddlers comprising the navigation history. Each time you click on a link to a tiddler, the title of the target tiddler is added to the top of the stack. The history list is stored in JSON to allow additional details about the coordinates of the DOM node that initiated the navigation. The history list also maintains the field current-tiddler that contains the name of the tiddler at the top of the stack. This field can be used like so: Which renders the same as the "Open" sidebar tab, with the addition of a tick against the tiddler that was last navigated to. To display content when the story is empty, create $:/config/EmptyStoryMessage and enter the desired contents. The following would show the GettingStarted tiddler when all others are closed. When you edit a tiddler on http://tiddlywiki.com you will see a small ribbon inviting you to edit the source of the tiddler on GitHub. If you are using Node.js, you can replicate this feature for your own TiddlyWiki-based site as follows: To create a new tab in the sidebar menu: Note that you can create new tabs under the "More" tab in the same way by using the tag You can apply custom styles to tiddlers that have a particular tag by defining a CSS class with the name For example, to make tiddlers tagged "NightReader" appear in a special colour scheme suitable for night-time reading, create a stylesheet defining the class The Note that tags containing spaces or non-alphanumeric characters will be converted using URI encoding, making the generated CSS classname hard to predict. For example: Although TiddlyWiki will generate these tags, to actually use them in your css, you will need to escape the percent character in your stylesheet, like: A utility function is available in JavaScript to perform the conversion: Generates the following output: First install TiddlyWiki as described in Installing TiddlyWiki on Node.js. Imagine that you are using a Table of Contents macro similar to this: The sorting is fine for most cases, but you would like all your items tagged The trick is to add a field to the parent tagging tiddler (i.e. Now change your Table of Contents to look like this: Now your Table of Contents will sort by title everywhere, except for the children of the The downside to this trick is that you can't apply a reverse sort based on just one special field. If you reverse the sort order, it will be reversed everywhere. Note: Before we dive into how you can embed files of a certain type, you may want to consider not embedding and instead simply linking to external resources like this: Then let your browser decide how to handle the resource. The advantage to this approach is that it is simple and quick. The disadvantage is that the file doesn't actually travel with the TW5 file and that you can't use One is to drag and drop the file onto your TW5 file. Wait for the green bar to appear at the top, drop, and then import from the import tiddler. This actually embeds the contents of your imported PDF (or other file) into your TW5 file. This method be OK as long as your PDF is not too big. There can be concerns if your TW5 file becomes too big. The other way is to create a tiddler link to the external file. In this method the file is not actually incorporated into your TW5 file, but can be accessed with the Create a tiddler with a field With either way, with an appropriately configured browser, you should see your embedded PDF file. There's only so many file formats that TW5 knows about. There is a list at ContentType. If your browser and/or TW5 doesn't know what to do with a particular file format, then you can only the use the second method to embed and then download a file. When you edit the tiddler a link is presented. You can right click on the link in order to download the file.
To export all tiddlers click on the "Tools" tab of the Sidebar. Find and click the export all button. A pop-up menu will offer you the chance to export tiddlers in multiple formats. If you want to export a particular tiddler, first navigate to that tiddler. Then click on the more button that appears above the tiddler. From the list that appears select export tiddler. A pop-up menu will offer you the chance to export the tiddler in multiple formats. To export a selection of tiddlers, click the little magnifying glass next to the search area on the sidebar. This will open the Advanced Search tiddler. Click on the "Filter" tab of the Advanced Search tiddler. Only the Filter tab will allow you to export a selection of tiddlers. Filters follow a particular syntax. Click on this Filters link to learn about how to make filters. Once you have written a filter, a list of tiddlers matching the filter will appear. Now you can click on the export tiddler button to the right of the filter input field. A pop-up menu will offer you the chance to export tiddlers in multiple formats. Currently, the export formats available are: The Here's how to display the last modification date of a wiki in a banner in the corner of the window: CamelCase is used in most Wikis, but it can interfere with text presentation in some situations. To turn off a particular instance of a CamelCase text, simply put a tilde (~) in front of the word, like this: To turn off CamelCase in all tiddlers, navigate to the Control Panel. Select the HTML tags and comments can be used directly in WikiText. For example: Widgets share the same syntax as HTML tags, and so the following information applies to them, too. The content of an HTML element will be parsed in inline mode unless the opening tag is followed by two linebreaks, in which case it will be parsed in block mode. (Inline mode means that block mode formatting such as tables, lists and headings is not recognised). In an extension of conventional HTML syntax, attributes of elements/widgets can be specified in several different ways: Literal attribute values can use several different styles of quoting: Literal attribute values can include line breaks. For example: By using triple-double quotes you can specify attribute values that contain single double quotes. For example: Transcluded attribute values are indicated with double curly braces around a TextReference. For example: Variable attribute values are indicated with double angle brackets around a macro invocation. For example: Filtered attribute values are indicated with triple curly braces around a Filter Expression. The value will be the first item in the resulting list, or the empty string if the list is empty. This example shows how to add a prefix to a value: It is often useful to be able to create HTML links to external resources. For example, here the value of the However, there is an unexpected security issue that means that most of the time the link should have the The image-picker macro displays an interactive image picker, as can be seen in the core text editor. The images are selected by means of a filter expression, into which the This next example shows how the Here is an example of using the ListWidget and the TranscludeWidget to show a grid of all system images (ie, tiddlers tagged $:/tags/Image).
Images can be included in WikiText with the following syntax: You can also insert images from the editor toolbar. Click picture () and select a picture file. If the image source is the title of an image tiddler then that tiddler is directly displayed. Otherwise it is interpreted as a URL and an HTML A tooltip can also be specified: Attributes can be provided to specify CSS classes and the image width and height: Note that attributes can be specified as transclusions or variable references: The image syntax is a shorthand for invoking the ImageWidget. You can also display an image stored in a tiddler by transcluding that tiddler. The disadvantage of this approach is that there is no direct way to control the size of the image. Renders as: The image widget displays images that can be specified as a remote URL or the title of a local tiddler containing the image. Any content of the The width and the height can be specified as pixel values (eg "23" or "23px") or percentages (eg "23%"). They are both optional; if not provided the browser will use CSS rules to size the image. When used to display tiddler-based images, the image widget operates in two distinct modes: See ExternalImages for more details.
You can import content into a TiddlyWiki file in several ways: The ImportVariablesWidget imports macro and variable definitions from a list of other tiddlers and makes them available to its children. For example: The content of the importvariables widget is the scope within which the imported variable definitions are available. So-called global macros are implemented within the main page template ($:/core/ui/PageTemplate) by wrapping the page content in the following importvariables widget: Anyone can submit improvements to the TiddlyWiki documentation that appears on http://tiddlywiki.com. (For improvements to the core code a more complicated process must be used because of the need to test the changes both in the browser and under Node.js before submission). Jermolene or one of the other core developers will then have the opportunity to merge your pull request so that it is incorporated into the next build of http://tiddlywiki.com. Mario Pietsch has created these short video tutorials:
A plugin that allows changes to be synchronised with the IndexedDB database that is built-in to most browsers. Being quite new to TW5 development I tried my best to draft a SyncAdaptor to store tiddlers in IndexedDb. This is quite useful if an application / plugin installation is not possible (we have quite some restrictions at work...).
Each input title is processed in turn, and is ignored if it does not denote a data tiddler. The list of property names is retrieved from the data tiddler (in no particular order) and then dominantly appended to the operator's output. Where a tiddler's content is JSON with an array as its root, the System tiddlers in the namespace Each tiddler has a panel of additional information. To reveal it, click the button in the tiddler's toolbar and then choose info from the dropdown list. The info panel has the following tabs: To close the info panel, click anywhere outside it.
빈 위키폴더를 초기화하고 지정한 에디션을 복사합니다. 예를 들어: 참고: See also: Follow these instructions when using TiddlyWiki as a standalone HTML file: Follow these instructions when using TiddlyWiki under Node.js: If it fails with an error you may need to re-run the command as an administrator: The If you are using Debian or Debian-based Linux and you are receiving a Example Debian v8.0: After this procedure you can work with TiddlyWiki5 via npm as though it had been installed in the usual way with Update the clone from time to time in order to ensure that you have the latest code.
Instruction tiddlers talk directly to the reader and guide them through a process. The reader is likely to be a beginner or an intermediate user. Such tiddlers can be subcategorised as: Instruction tiddlers talk directly to the reader as "you". They can be reasonably chatty. But they avoid excessively colloquial language, cultural or topical references and attempts at humour, as these can baffle or even offend the international readership. They also avoid potentially frustrating the reader with descriptions of features as "convenient" or "easy".
A git choose-your-own-adventure!ⓡ for walking yourself though fixing a broken Git repository. http://sukima.github.io/GitFixUm/ This document is an attempt to be a fairly comprehensive guide to recovering from what you did not mean to do when using git. It isn't that git is so complicated that you need a large document to take care or your particular problem, it is more that the set of things that you might have done is so large that different techniques are needed depending on exactly what you have done and what you want to have happen.
The simplest case is where you already know exactly which tiddlers you want. Type each title in double square brackets, with a space between each one and the next: You can omit the square brackets when a title doesn't contain any spaces: The double square brackets are actually a shorthand for this: ... which gives us the general model for any filter: For instance, here's how to select all the tiddlers that have been tagged We can reverse the meaning by adding an exclamation mark Tiddlers can be filtered by other fields than just title and tags: That example will select any tiddlers that have As the word "serving" isn't a standard filter operator (and isn't likely to become one), you can safely omit the The filters we've looked at so far have involved just one step each. But you can run several steps together like this: Notice how the entire run is contained in a single pair of square brackets. A tiddler has to match all of the steps in a run. So the example above retrieves vegetarian recipes (other than soups) for 4 people. A sequence of separate runs will select the tiddlers that match any of the runs. We can use this to find recipes that serve either 3, 4 or 5 people: If we want to ignore vegetarian recipes that serve 4, we can say this: By default, each run considers every tiddler in the wiki. But we can use a This selects recipes for 3, 4 or 5 people, then filters those to keep only the vegetarian ones, and finally sorts any that are left into alphabetical order of title. In a similar way, we can use a The parameter of each step we've seen so far has been in square brackets, meaning that TiddlyWiki treats it literally. But two other kinds of bracket are possible: Curly brackets as an alternative to Angle brackets This brief presentation explains the basic principles of TiddlyWiki. The TiddlyWiki used to produce the video can be found here: The parameter If When The JavaScript is a computer language that was originally introduced by browsers as a way of scripting web pages. At first it was considered a poorly designed toy, but over the years has become recognised as a powerful language in its own right, and has been adopted widely beyond the browser. JavaScript looks like this: JSON is a standard plain-text format used for modelling hierarchical structures of objects that contain named fields. DataTiddlers can have JSON content. The I'm the original inventor of TiddlyWiki. You can find me on these services: Further information: A JSON tiddler is a data tiddler containing a JSON structure in its Its ContentType is The history list is a good example of a JSON tiddler.
The jsontiddlers macro returns the fields of a selection of tiddlers in JSON form. An example can be seen in the template tiddler for JSON exports. This plugin adds the ability to display mathematical notation written in LaTeX. Keyboard shortcuts are available for common editing operations: The current shortcuts can be inspected and customised in the "Keyboard Shortcuts" tab of control panel . The keyboard widget allows ActionWidgets to be triggered by specific key combinations. There is also a shorthand for generating Messages via the The content of the Key strings are made up of one or more key specifiers separated by spaces. Each key specifier is zero or more of the modifiers alt, shift, ctrl or meta followed by the name of a key, all joined with "+" plus or "-" minus symbols. Key names are either the letter or digit printed on the key (eg "a" or "1"), or one of the special keys backspace, tab, enter or escape. For example: 티들리위키 한국어 번역은 다음에서 사용할 수 있습니다: Here is an example of using the ListWidget and the TranscludeWidget to show a grid of all language icons (ie, tiddlers tagged Language and Icon).
The core TiddlyWiki user interface is available in over 20 languages. You can install language plugins using the plugin manager under the control panel plugins tab. You can change the current language using the language button, found on the "Tools" tab in the sidebar. You can contribute a new language to the library by learning how to translate TiddlyWiki into your language. For some languages, there are pre-built editions with additional translated documentation: These examples make use of the Days of the Week tiddler. The latest news, articles, resources and examples. A mapping plugin based on Leaflet library. Allows you to create maps based upon geographical data contained in tiddlers. http://sycom.github.io/TiddlyWiki-Plugins/#Leaflet%20plugin The leaflet plugin is a (working) attempt to integrate the leaflet library in TiddlyWiki in order to display geographical purpose tiddlers. For now Have a look at demo page on the web.
NoteSelf is your personal, private, customizable, Evernote-like experience.
You want cloud? Fine! You don't? Fine too! It's all yours, It's your decision!
Why not be a bit selfish? NoteSelf is the perfect place to store your ideas, notes, thoughts, tips, tricks, recipes...
whatever you want to put into it! NoteSelf will store, index, and make it easily
searchable, so you will find it instantly whenever you need it! You already know and love Evernote, we know it. It is comfortable, it syncs, has search capabilities...
Wow, it's almost perfect, but what about: NoteSelf is built on top of TiddlyWiki, a powerful, free, highly customizable and open-source personal wiki.
We took the best of it, it's powerful customization system, and mixed it with one of the best
embedded databases available, PouchDb, for bringing the synchronization capabilities you need.
Slides and Stories is a repository of the tools to optimize TW for scientific research and for presenting and publishing results. http://slidesnstories.tiddlyspot.com ...is a tool to save and reload sets of Tiddlers. This is already working, The aim is to develop a mechanism to transform these into instant slideshows. is a tool which gives you the possibility to attach and show specific information in tabs at the bottom of each Tiddler: ideas, notes, tasks, stories and presentations, comments, annotations and footnotes. A Knowledge Network about TiddlyWiki. http://confocal-manawatu.pbworks.com/w/page/113574373/TiddlyWiki Interconnected with the visual taxonomy at every node:
http://debategraph.org/Stream.aspx?nid=457381&vt=bubble&dc=focus TWKN will be transferred into TWederation/TiddlyMap format as soon as I am convinced in reliable and secure versioning and multi-user operation in TW format.
Your assistance and support would be highly appreciated.
Task & Delegation Tracking, Meetings & Agenda Items, Project Roles, Progress & Status Updates, Reference Items, Tickler Calendar, Conversation Logging, Book Notes & Library, and More! Cardo is a standalone, browser-based tool that can be used as a simple task manager, or as a complex Project Management system (and indeed, I do use it this way in my daily work) as well as a fully Wiki-ized personal knowledge store. It runs completely independently in the browser, even without an Internet connection, making it possible to carry around on a USB stick, or to use on the morning commute.
An enormous collection of tips beautifully curated by Tobias Beer. It is actually a collection of sites, with sub-sites dedicated to topics such as filtering (http://tobibeer.github.io/tw/filters/). http://tobibeer.github.io/tb5/ A collection of references and sandbox for testing concepts around TiddlyWiki 5...
TiddlyServer is a special purpose Desktop app, designed to facilitate managing multiple instances of TiddlyWiki running as a server. It does not require internet acess to access the wikis. https://github.com/mklauber/TiddlyServer/releases/ TiddlyServer can import both TiddlyWiki files and TiddlyFolder wikis. For each wiki, you specify a prefix to serve it with and the source to import from. It will copy the wikis to its own internal store and begin serving them up at http://localhost:8080/{prefix}/. The export button for each wiki will convert it to a single file wiki. A collection of helpers by Thomas Elmiger, among them a tweet button macro, a text-stretch solution, a snippet extraction macro and a tiddler that installs a scroll-to-top button via drag-and-drop. Quick Extensions for TiddlyWiki 5 – […] As I take from the community, I am happy if I can give back. You can use my stuff to do whatever you like, but remember to save a back-up first.
Ordinarily with TiddlyWiki, the full content of all tiddlers is embedded into the main HTML file. Lazy loading refers to the technique of only embedding metadata about the tiddler (in other words all fields except the text field), and requesting the body from the server when required. Lazy loading can be used in two configurations: See the LazyLoadingMechanism for details of how lazy loading is implemented. To start TiddlyWiki with lazy loading for image tiddlers use this command: To apply lazy loading to all non-system tiddlers use this command: With the current configuration, lazy loading is enabled by default. A mapping plugin based on Leaflet library. Allows you to create maps based upon geographical data contained in tiddlers. http://sycom.github.io/TiddlyWiki-Plugins/#Leaflet%20plugin The leaflet plugin is a (working) attempt to integrate the leaflet library in TiddlyWiki in order to display geographical purpose tiddlers. For now Have a look at demo page on the web.
Learn more about using TiddlyWiki: Also see the complete Reference, including advanced WikiText, macros, widgets, filters etc.
TiddlyWiki is published under a permissive BSD 3-Clause License stored in the shadow tiddler $:/core/copyright.txt: In layman's terms, the license says that you can take TiddlyWiki and do anything you want with it without any license fee payment or other legal obligation to the creators of TiddlyWiki or anyone else. The quid pro quo is that there is no warranty or guarantee with open source projects like TiddlyWiki. You can't sue the contributors to TiddlyWiki for any loss or damage due to the use of TiddlyWiki: even if your data is lost due to a tragic chain of circumstances that involves TiddlyWiki. You are respectfully requested that to make an attribution to the project, but there's no obligation to do so. For the avoidance of doubt, any information that you choose to store within your own copy of TiddlyWiki remains yours; using TiddlyWiki to publish content doesn't change whatever rights you may have to that content.
The lingo macro relates to the translation of TiddlyWiki's user interface into other languages. It returns a piece of text in the user's currently selected language. Translatable text is supplied by language plugins containing tiddlers with specific titles that start with This example shows the text used as the basis for the title of a newly created tiddler: This example shows the name of the eighth month of the year, for use in formatting dates: The link catcher widget traps WidgetMessage: tm-navigate dispatched within its child content by performing any or all of these actions: The content of the A key capability of WikiText is the ability to make links to other tiddlers or to external websites. Link to a tiddler by title: To link to a tiddler and specify the text of the link: You can also create a link from the editor toolbar. Click link (), and search and select a tiddler. For tiddler titles that match the CamelCase rules, just typing the title without double square brackets will automatically create a link. You can suppress a link from being recognised by preceding it with That renders as: ... and the underlying HTML is: To link to an external resource such as a website or a file, type its full URL, including the URI scheme such as a protocol (e.g. For this syntax to work, the URL has to be recognisable as a URL. Otherwise, it is treated as a tiddler title. As a result, in case you want to link to a resource locatable using a relative path, use the extended syntax: The extended syntax still works with full URLs, although in that case it is not necessary: You can also use the extended syntax to force an external link: See the LinkWidget for details of the underlying widget used to implement tiddler links, including macros that can be used to customise its behaviour. Each input title is processed in turn. The corresponding tiddler's list of links is generated, in the order in which they appear in the tiddler's text, and dominantly appended to the operator's overall output. Here are some hard links: The The content of the link widget is rendered within the The default value of the tooltip attribute is supplied by the This means that you can control the text of a link tooltip in several ways: Renders as: Note that the tooltip is rendered with the current tiddler set to the target of the link. A useful convention is to set the tooltip like this: This causes the tooltip to be the tooltip field of the target tiddler. If the field isn't present, then the title is used instead. These examples make use of the Days of the Week tiddler. The list-links macro returns a formatted list of links to a selection of tiddlers. If a tiddler has a Each input title is processed in turn. A list of tiddlers whose The You can create bulleted (unordered) lists with That renders as: ... and the underlying HTML is: Numbered (ordered) lists use You can also mix ordered and unordered list items: That renders as: ... and the underlying HTML is: Here's an example the other way around, with numbers as the first level: That renders as: ... and the underlying HTML is: You can also assign a CSS class to an individual member of a list with this notation: That renders as: ... and the underlying HTML is: Note that Block Quotes in WikiText can be mixed with lists. For example: That renders as: A quote Another quote ... and the underlying HTML is: Entries in the list are delimited with a linebreak, making it impossible to include linebreaks within a list entry. There are a couple of workarounds. First, you can transclude paragraph content from another tiddler. For example: Secondly, you can use an HTML "div" element to contain the multiline content. For example: The list widget displays a sequence of tiddlers that match a tiddler filter. It can be used for many purposes: The tiddlers are displayed by transcluding each in turn through a template. There are several ways to specify the template and for controlling the behaviour of the list. plain list Displays as: custom item output Displays as: custom item template Displays as: See GroupedLists for how to generate nested and grouped lists using the ListWidget. The content of the The The In order for the storyviews to animate correctly each entry in the list should be a single block mode DOM element. The optional The macro's Each individual The The To call a macro, place By default, parameters are listed in the same order as in the macro's definition. A parameter can be labelled with its name, either for clarity or to modify the order. If no value is specified for a parameter, the default value given for that parameter in the macro's definition is used instead. (If no default value was defined, the parameter is simply blank.) Each parameter value can be enclosed in A more formal presentation of this syntax is also available. The syntax is actually a shorthand for a As macros are simply parameterised variables, a variable's value can be inserted using the same techniques.
The macro's The parameter declaration list ( The parameter separator ( A Each individual The optional The The The snippet can contain placeholders with the following syntax: A macro is defined using a The first line of the definition specifies the macro name and any parameters. Each parameter has a name, and optionally a default value that is used if no value is supplied on a particular call to the macro. The lines that follow contain the macro's text (i.e. the snippet represented by the macro name), until Alternatively, the entire definition can be presented on a single line, without an A more formal presentation of this syntax is also available. The snippet can contain placeholders for parameters. These consist of a parameter name between dollar signs, like It can also contain placeholders for variables. These consist of a variable name (or macro name) between dollar signs and round brackets, like The actual value of the parameter or variable is substituted for the placeholder whenever the macro is called:
Macros are available to the tiddler that defines them, plus any tiddlers that it transcludes. To make a macro available to all tiddlers, define it in a tiddler that has the tag It is also possible to write a macro as a JavaScript module. JavaScript macros are available to all tiddlers, and offer the maximum flexibility. A tiddler can manually import macro definitions from a selection of other tiddlers by using the The macro call widget provides an alternative syntax for invoking macros. The advantage of the widget form is that it allows macro parameters to be specified as widget attributes, thus allowing indirection and macro values to be set. For example, a macro called You can see several examples of the macro call widget within the core: The content of the A macro is a named snippet of text. WikiText can use the name as a shorthand way of transcluding the snippet. Such transclusions are known as macro calls, and each call can supply a different set of parameters that get substituted for special placeholders within the snippet. For the syntax, see Macros in WikiText. Most macros are in fact just parameterised variables. They are created using the The snippet and its incoming parameter values are treated as simple strings of characters with no WikiText meaning, at least until the placeholders have been filled in and the macro call has returned. This means that a macro can assemble and return the complete syntax of a WikiText component, such as a link. (See Transclusion and Substitution for further discussion of this.) The string returned by a macro call is parsed separately from any surrounding WikiText components. So a safe way to insert a special character sequence (such as Within a snippet itself, the only markup detected is The An For maximum flexibility, macros can also be written as JavaScript modules. A similar effect to a parameterised macro call can be produced by setting variables around a transclusion. TiddlyWiki's core has several macros built in.
The makedatauri macro takes a piece of text and an associated ContentType, and returns a corresponding data URI. 업그레이드 과정에 업그레이드 라이브러리의 형식은 이 명령은 내부 사용을 하는 것을 상정한 것이며; 사용자 정의 업그레이드 절차를 구축하는 사용자에게만 관련이 있습니다. 제목 인수의 기본값은 See the UpgradeMechanism for more details.
To get your own custom Journal button, start by cloning the New Journal button. Then create your own config tiddlers, eg: Edit your custom button and "search and replace" the config tiddler names. Change the following lines, near the end of the tiddler
from to if you want to see your config tiddlers in the sidebar use: This demo shows how to use SVG to render transcluded text along a path. Enter some text in the textbox below to try it out; view the source to see how it is done. The Markdown plugin enables you to use tiddlers that are written in standard Markdown markup. An experimental MathJax plugin for TiddlyWiki version 5. As Martin says, the implementation is a bit of a hack but may be useful until we have a better alternative. http://mathjax-tw5.kantorsite.net Welcome. I have created plugin for TiddlyWiki 5 which allows you to use MathJax (math in TeX and MathML) inside TiddlyWiki 5. It's unofficial plugin and it doesn't follow general policy of TiddlyWiki as stand-alone solution but it works. So you can use it if you want.
MathML is a markup language for mathematical notation that can be used with HTML. If your browser supports it, MathML elements can be used in TiddlyWiki5 WikiText just like HTML. Here is an example MathML equation from the W3C: Renders as:
Local meetings around the world for TiddlyWiki people: If you are a TiddlyWiki enthusiast please consider starting a local TWIG in your area, it's a great way to spread the word about using TiddlyWiki Widget messages are generated by widgets in response to user actions. They flow up the widget tree until they are handled by an ancestor widget. The following widget messages are implemented by the core: These examples make use of the Days of the Week tiddler. Modals (or "wizards") fade the main TiddlyWiki window to display an isolated tiddler that must be explicitly dismissed by the user. Modals are displayed with the WidgetMessage: tm-modal. A module in TiddlyWiki5 is a tiddler containing executable JavaScript, of the type See control panel > Info > Advanced > Loaded Modules for a list of currently loaded modules.
The These examples make use of the Days of the Week tiddler. MultiTiddlerFiles allow multiple tiddlers to be concisely represented in a single text file. The goals of this format are: MultiTiddlerFiles have the extension For example: This example defines two tiddlers, $:/language/ControlPanel/Basics/Caption and $:/language/ControlPanel/Basics/Version. If a The system tiddlers provided as part of the core are named according to the following rules: In the format column: In the default "classic" storyview mode, open tiddlers are displayed in a vertical column called the "story river". There are a number of ways you can navigate the story river - that is, how you can jump back and forth between the open tiddlers. The navigator widget manipulates the current store, the story list and history lists in response to various Messages. The navigator widget displays any contained content, and responds to Messages dispatched within it. The following Messages are handled by the navigator widget: Each input title is processed in turn, and its successor is located in the These examples make use of the Days of the Week tiddler. Node.js is a downloadable application for your PC, Mac or Linux computer that lets it run JavaScript applications. Unlike JavaScript applications running in a web browser, Node.js code has full access to the file system and other resources of the computer, enabling it to perform the roles that have traditionally been the preserve of languages like Java, PHP and Python. See http://nodejs.org for more details. For TiddlyWiki, Node.js means that we can have a single code base that can run in the browser or on the server, giving great flexibility in how it is used. For end users, Node.js is no more complicated to install than a web browser, but unlocks powerful capabilities such as the ability to run TiddlyWiki as a web server that you can connect to from other devices. See TiddlyWiki on Node.js for more details.
Version 5.0.11-beta includes some changes that can break content from earlier releases of TiddlyWiki 5. Previously, commands that generate output files would interpret the specified path to the file as being relative to the current working directory. So, for example, the following command would write In 5.0.11-beta this behaviour has changed, and now the specified filename is resolved relative to an You can override this behaviour with the OutputCommand. For example, to generate the A further change is that the Version 5.0.8-beta includes some changes that can break content from earlier releases of TiddlyWiki 5. You should rename any existing SiteTitle and SiteSubtitle tiddlers to $:/SiteTitle and $:/SiteSubtitle respectively. Version 5.0.8-beta marks a change in the way that TiddlyWiki determines whether to parse the content of an HTML element or widget in block mode or inline mode. It's important to be able to control which type of parsing is performed for different situations. Prior to 5.0.8-beta, TiddlyWiki parsed the content of an element in inline mode unless the opening tag of the element were immediately followed by a line break. This meant that much of the time element tags would be shunted together into a long line, hindering readability. The new behaviour for 5.0.8-beta is to parse the content of an element in inline mode unless the opening tag is immediately followed by two line breaks. To adjust existing content for 5.0.8-beta you will need to manually add the additional line break after the opening tag of elements and widgets whose content should be parsed in block mode. The positive aspect of the change is that it removes the need to pack multiple HTML tags onto a single line, improving readability. Consider the difference between these two examples. First, here's an HTML tag that starts with two line breaks: That renders as: And a paragraph of text. ... and the underlying HTML is: Secondly, here's an HTML tag with just a single line break. Notice how the heading is no longer recognised as a heading That renders as: ... and the underlying HTML is: The handling of wiki folders has changed. Previously, if the This is how to create and start a new server-based wiki: Note that the name of the clientserver edition has changed to server. Notifications are small informational messages that appear at the top right of the TiddlyWiki window, and automatically disappear after a preset time. The now macro returns the current date and time in a specified format. The value doesn't update automatically, like a ticking clock. It updates whenever the macro call is rendered, such as when the containing tiddler's display needs to be refreshed for some other reason. These examples make use of the Days of the Week tiddler. NW.js is an OpenSource application that fuses the functionality of a web browser with that of Node.js. It makes it possible to use web applications as though they were native apps, with full access to the file system and other native facilities. Learn more from the official site or this introductory blog post. See TiddlyWiki on NW.js for details of how to use TiddlyWiki with NW.js. An introduction to the biblical book of Obadiah by Dave Gifford using the table of contents macro and various custom tweaks to TiddlyWiki: custom new here buttons, this custom viewtemplate addition to add notes or images within any tiddler, and a tiddler transcluding all the content, in order to facilitate printing (this tiddler). The official TiddlyWiki plugin library contains the plugins that are part of the main TiddlyWiki 5 GitHub repository. Install them from the plugin library. Plugins from the official plugin library are automatically updated as part of the upgrade process. OpenSource is defined by Wikipedia as a philosophy, or pragmatic methodology that promotes free redistribution and access to an end product's design and implementation details. When TiddlyWiki generates a list of the tiddlers that have a particular tag (e.g. the dropdown list of a tag pill), it orders the tiddlers using the following rules: Either reverses or preserves the order of the input list according to whether the parameter is the special value Founded in 2004 by JeremyRuston, Osmosoft was originally a consultancy for software services around TiddlyWiki. Notable engagements included working with Socialtext on Socialtext Unplugged. In 2007, Osmosoft was acquired by BT and became the champions for open source within the enterprise. As part of BT, Osmosoft has worked on a diverse range of projects within BT and for BT's customers. The Oxford TiddlyWiki Interest Group meets monthly for discussions and demonstrations about TiddlyWiki. See https://oxtwig.eventbrite.co.uk/ for details of our next meeting. We have an email discussion list, too: https://groups.google.com/forum/#!members/oxtwig The second OXTWIG meeting was held on Thursday 16th January 2014: The first OXTWIG meeting was held on Thursday 21st November 2013:
One major feature of TiddlyWiki that many new users are unaware of is the degree to which TiddlyWiki can be customised, just by adding or removing SystemTags in key shadow tiddlers or in your own custom tiddlers. Once you know what you are doing, all of these things are actually pretty easy to do. You can also create any tiddler you want and tag it with the appropriate SystemTag, and it will appear in that place. For example, if you create a tiddler 'Reminder to self', add the text 'This is a reminder' and tag it When you add new tiddlers to be displayed within tiddlers or within the page layout, you will also probably need to reposition it so that it appears precisely where you want it to appear. To do this, edit the appropriate shadow tiddler with the prefix Let's say you have a skeleton tiddler called 'Recipe template', and you want to have a button available in the tiddler ViewToolbar to create new recipe tiddlers on demand. This will require the following steps: In the More > Shadows tab you will find a list of all the shadow tiddlers. In this list you will find many tiddlers with the prefix For example, $:/core/ui/SideBar/More is the tiddler for the More tab in the Sidebar, and it is tagged with the SystemTag You can use the same process for any of the core user interface tiddlers with the $:/core/ui/ prefix. For example, removing the SystemTag If you modify a shadow tiddler in this way you will overwrite the pre-installed value. If you want to revert, just delete the modified tiddler to restore the underlying shadow tiddler.
To mark the end of a paragraph in TiddlyWiki you need to type Single line breaks are ignored within paragraphs. For example: That renders as: This is a
paragraph made
up of
short lines ... and the underlying HTML is: For situations where this behaviour isn't convenient, you can also use Hard Linebreaks in WikiText.
후속 암호화 조작을 하기 위해 비밀번호를 설정합니다 참고: 이것은 비밀번호로 보호된 티들리위키를 서버에 넣어 사용해서는 안됩니다. 대신, 서버명령에 따른 비밀번호 옵션을 보세요.
The password widget displays a password input box that is bound to a named entry in the TiddlyWiki5 PasswordVault. Passwords are currently stored in the browsers local storage and are not themselves encrypted. The content of the Percent encoding is a notation that allows otherwise invalid characters to be included in a URI. Such characters are represented as a percent sign For example, a space is represented as TiddlyWiki ships with defaults that are designed to get the best out of modern devices from smartphones to desktop computers. If you need to work on older, less powerful devices, or work with large amounts of content, there are a few steps you can take to improve performance. Permalinks allow direct links to individual tiddlers within a TiddlyWiki. The simplest form of permalink () is a single target tiddler title appended to the base URL with http://tiddlywiki.com/#HelloThere The tiddler title can contain spaces if required: http://tiddlywiki.com/#Using TiddlyWiki on Node.js Note that double square brackets are not required around the target tiddler title; however, if present they are silently removed. The permalink can also specify the story list of tiddlers that should be opened alongside the target tiddler as a TiddlerFilter: http://tiddlywiki.com/#TiddlerFields:Tiddlers TiddlerTags TiddlerFields ContentType If the target tiddler isn't present in the story list then it is automatically inserted at the top. This means that the following two examples both target the tiddler http://tiddlywiki.com/#Tiddlers:Tags TiddlerFields http://tiddlywiki.com/#Tiddlers:Tiddlers Tags TiddlerFields It is also possible to specify a story filter without specifying a target tiddler for navigation: http://tiddlywiki.com/#:[tags[task]] There are technical restrictions on the legal characters in an URL fragment. To allow all tiddler titles to be addressed, illegal characters are subject to a process called "URL encoding" whereby problematic characters are replaced by their numeric code. For example, the space character is replaced with Both the target tiddler title and the story filter should be URL encoded (but not the separating colon). TiddlyWiki generates properly encoded URLs which can look quite ugly. However, in practice browsers will usually perfectly happily process arbitrary characters in URL fragments. Thus when creating permalinks manually you can choose to ignore URL encoding. Two important aspects of TiddlyWiki's behaviour with permalinks can be controlled via options in the control panel Settings tab: Note that typing or navigating to a permalink will always cause the permalink to be processed, and tiddlers opened and closed as appropriate. When TiddlyWiki starts up it processes permalinks according to the following steps; the same steps are repeated if the permalink changes dynamically (this happens in response to the user editing the address bar, for example). A system for lesson planning built with TiddlyWiki. I built a program to help enter and store lesson plan information and then facilitate/automate some of the tedious work involved in creating the actual lesson plan document.
The purpose of recording and organising information is so that it can be used again. The value of recorded information is directly proportional to the ease with which it can be re-used. The philosophy of tiddlers is that we maximise the possibilities for re-use by slicing information up into the smallest semantically meaningful units with rich modelling of relationships between them. Then we use aggregation and composition to weave the fragments together to present narrative stories. TiddlyWiki aspires to provide an algebra for tiddlers, a concise way of expressing and exploring the relationships between items of information.
These editions contain simple demos of the original set of TiddlyWiki plugins. They were prepared for earlier versions of TiddlyWiki that lacked the plugin library. Plugins are stored as tiddlers with the following fields: Plugin authors are encouraged to provide special information and documentation tiddlers that TiddlyWiki can include as plugin information tabs in the control panel. Plugins should provide an icon contained in a tiddler with the title formed of Plugins expose the names of the individual information tabs that they wish to display in the The title of the associated information tiddler must be formed as follows: Thus, plugins can provide language-specific versions of each information tiddler. Note that information tiddlers should not reference other tiddlers within the plugin. This is because plugins containing themes or languages are dynamically switched in and out as they are selected, and so their information tiddlers may not be available for viewing. The control panel uses the 'subtiddler' attribute of the TranscludeWidget to access these tiddlers, which works independently of the plugin switching mechanism. On the server, plugins can be stored as ordinary JSON tiddlers but it is often more convenient to store them as separate tiddler files within folders. Plugin folders must contain a The The JSON structure for plugin tiddlers is as follows: By convention, the titles of the individual tiddlers are prefixed with the title of the containing plugin, but they are not restricted to do so. Note that if the Plugins are bundles of tiddlers that are distributed and managed as a single unit by being packed into a single JSON tiddler. Users can install them with drag and drop, or using the plugin library. The tiddlers within registered plugins behave as ShadowTiddlers: they can be freely overwritten by creating a tiddler with the same title, but deleting that tiddler restores the underlying tiddler value from the plugin. Plugins have a Plugins can be used to package ordinary content, or can include JavaScript modules that extend and enhance the core TiddlyWiki5 functionality. Plugins conventionally have a title of the form When running TiddlyWiki under Node.js, plugins can also be stored as individual tiddler files in PluginFolders. Plugins in TiddlyWiki5 are used to distribute optional components that customise and extend TiddlyWiki. You can install them from the official plugin library or from community sites.
Internally, plugins are a bundle of tiddlers packaged together as a single tiddler that can be installed, copied or deleted as a unit. The individual tiddlers within a plugin appear as ShadowTiddlers. See the PluginMechanism discussion for more details about how plugins are implemented internally. Plugins can contain JavaScript modules, style sheets, and templates. Plugins can also be used to distribute ordinary text, images or any other content. A collection of plugins from TheDiveO. TheDiveO's Third Flow plugin construction system: The ThirdFlow plugin brings to you another way to develop customization plugins for TiddlyWiki 5. It is not enforcing a specific development flow, it simply tries to help you. Otherwise, it tries to stay out of your way.
TheDiveO's FontAwesome plugin: The FontAwesome plugin supports embedding Font Awesome in TiddlyWiki 5. There is no need to install this font into your operating system in order to use it with TiddlyWiki 5. The font is already embedded in this TiddlyWiki 5 customization plugin instead, so nothing else to install.
The popup mechanism allows blocks of content to be selectively displayed and positioned with respect to an anchor. It has several parts: A pragma is a special component of WikiText that provides control over the way the remaining text is parsed. Pragmas occupy lines that start with The following pragmas are available: In looking for matches for These examples make use of the Days of the Week tiddler. The operator may be used to prepend a number of items to the list. The operand may list only items without spaces – to include items with spaces, use a reference to an array e.g. prepend the last three short days of the week to the list Ordinarily, at startup TiddlyWiki displays the tiddlers specified as a filter in the tiddler $:/DefaultTiddlers. Sometimes it's useful to re-open the same tiddlers that were open when the file was saved. To do so, set $:/DefaultTiddlers to this filter: This filter returns the tiddlers specified in the $:/StoryList tiddler, which is the system tiddler that TiddlyWiki uses to store the sequence of tiddlers in the current story.
Each input title is processed in turn, and its predecessor is located in the These examples make use of the Days of the Week tiddler. These examples make use of the Days of the Week tiddler. These examples make use of the Days of the Week tiddler. These examples make use of the Days of the Week tiddler. These examples make use of the Days of the Week tiddler. The qualify macro is an important part of the StateMechanism. It returns a unique string that encodes its position within the widget tree, as identified by the stack of transcluded tiddlers that lead to that position. It is implemented using the The results returned by the The two examples below are identical, but produce different results because the second one has been transcluded from another tiddler. Each example shows the result of calling Wikipedia defines a Quine as a computer program which takes no input and produces a copy of its own source code as its only output. TiddlyWiki is an unusual example of a practical quine: it is this ability to produce a copy of its own source code that lies at the heart of TiddlyWiki's ability to independently save changes to itself.
The radio widget displays an HTML The content of the This example uses the radio widget to change the That renders as:
Using the radio widget in index mode requires the index attribute to specify the name of the index of a DataTiddler to which the specified value is assigned. This example sets the That renders as:
Railroad diagrams, sometimes called syntax diagrams, are a visual way of explaining the syntax rules of a computer language. Reading one is like reading a public transport map. Each diagram starts on the left and ends on the right. Simply follow any line from the startpoint to the endpoint. All the alternative lines are equally valid. A line will sometimes jump over an item that is optional, or loop back to indicate that an item can be repeated. In the example above, a comma appears between each occurrence of the Characters in round boxes are literal, i.e. they denote themselves. A name in a rectangular box denotes a further railroad diagram. The railroad diagrams in TiddlyWiki's documentation are generated with the Railroad Plugin.
This plugin provides a Alternatively, the diagram notation can be stored in a dedicated tiddler with its The plugin is based on a library by Tab Atkins, and has been extended to make it more flexible, including allowing components of a diagram to function as links or be transcluded from other tiddlers.
The railroad widget uses a special notation to construct the components defined below. Names (as opposed to quoted strings) are available when a value starts with a letter and contains only letters, digits, underscores, dots and hyphens. Featuring plugins that integrate two interesting new capabilities: I developed some plugins related to engineering tasks. After using them for personal projects I'm glad to share with TiddlyWiki community.
Welcome to TiddlyWiki, a non-linear personal web notebook that anyone can use and keep forever, independently of any corporation. TiddlyWiki is a complete interactive wiki in JavaScript. It can be used as a single HTML file in the browser or as a powerful Node.js application. It is highly customisable: the entire user interface is itself implemented in hackable WikiText. Learn more and see it in action at http://tiddlywiki.com/ Developer documentation is in progress at http://tiddlywiki.com/dev/ If it fails with an error you may need to re-run the command as an administrator: The If you are using Debian or Debian-based Linux and you are receiving a Example Debian v8.0: TiddlyWiki5 can be used on the command line to perform an extensive set of operations based on TiddlyWikiFolders, TiddlerFiles and TiddlyWikiFiles. For example, the following command loads the tiddlers from a TiddlyWiki HTML file and then saves one of them in static HTML: Running The first argument is the optional path to the TiddlyWikiFolder to be loaded. If not present, then the current directory is used. The commands and their individual arguments follow, each command being identified by the prefix The available commands are: If you've installed TiddlyWiki on Node.js on the usual way, when a new version is released you can upgrade it with this command: On Mac or Linux you'll need to add sudo like this: This readme file was automatically generated by TiddlyWiki The TiddlyWiki5 repository contains several scripts in the All the scripts expect to be run from the root folder of the repository. Or: This script starts TiddlyWiki5 running as an HTTP server, defaulting to the content from the To experiment with this configuration, run the script and then visit Changes made in the browser propagate to the server over HTTP (use the browser developer console to see these requests). The server then syncs changes to the file system (and logs each change to the screen). This script runs the Or: This script serves the This script builds TiddlyWiki 2.6.5 from the original source and then displays the differences between them ( Reference tiddlers offer raw information in a comprehensive interlinked way. The reader is likely to be an intermediate or expert user. There are several subcategories: Reference material is written in a terse, formal style that avoids referring to the reader, and instead focuses on how TiddlyWiki itself behaves. The passive voice is often suitable: Most contracted verb forms are avoided in reference tiddlers. But those ending in "n't" ("aren't", "doesn't", "hasn't", "isn't", etc) are acceptable, as they make it less easy to accidentally overlook the word "not".
Regular expressions are concise strings of characters that denote patterns of text to search for. The format used in TiddlyWiki is fully defined in this Mozilla reference. The filter syntax makes it impossible to directly specify a regular expression that contains square brackets. The solution is to store the expression in a variable. See the examples. The parameter Only the If These examples make use of the Days of the Week tiddler. The regular expression That renders as:
This release is the culmination of a large scale refactoring of the widget mechanism of TiddlyWiki5. There are several changes to be aware of if upgrading from earlier versions: See GitHub for detailed change history of this release This minor release just contains fixes for the syncer and related adaptor modules for the TiddlyWeb edition and for TiddlyWiki5's integrated server.
See GitHub for detailed change history of this release This release has several bug fixes: See GitHub for detailed change history of this release This release has several bug fixes: See GitHub for detailed change history of this release Contributors to this release include @jermolene and @grayeul.
See GitHub for detailed change history of this release Contributors to this release include @jermolene, @asampal and @pmario.
See GitHub for detailed change history of this release See GitHub for detailed change history of this release See GitHub for detailed change history of this release See GitHub for detailed change history of this release See Notes for upgrading to 5.0.11-beta for more details of these changes: I (@Jermolene) would like to thank the contributors to this release who have generously given their time to helping improve TiddlyWiki: @BramChen, @mwfogleman, @nameanyone, @natecain, @pekopeko1, @pmario, @sukima, @xcazin.
See GitHub for detailed change history of this release This is an emergency release that fixes a single significant bug with shadow tiddler handling in 5.0.11. See the discussion thread for more details.
See GitHub for detailed change history of this release This release includes a number of features designed to improve the experience of TiddlyWiki with a screen reader. Particular thanks to @domasofan for his feedback @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release The Plugins tab of the control panel has been improved with the addition of documentation tabs that plugins can use to show documentation. There is also a larger draggable area for dragging tiddlers across to other wikis. The page toolbar and the tiddler toolbars can now be configured with several new buttons - see the control panel under the Appearance and Toolbars tabs. The sidebar tools tab now shows all the available page controls, allowing them to be invoked or checked to appear in the toolbar. The tiddler info area now includes a tools tab that includes buttons for all the tiddler actions. There are two components: TiddlyWiki now takes a much more conservative approach to recognising CamelCase terms that should be automatically linked. Previously, the dash and underscore were treated as lower case letters, leading to a number of false positives. See the GitHub bug #337 for details. With previous beta releases of TiddlyWiki the browser address bar is automatically updated so that it dynamically reflects the tiddlers that are currently open. This makes it easier to get a permalink for copying and pasting elsewhere, but it leads to much confusion for casual users who don't always understand why unexpected tiddlers are being displayed after they have refreshed the page in the browser. For 5.0.14-beta, the setting has been changed. Visit control panel Advanced/Settings to switch the setting back to "Include the target tiddler and the current story sequence". @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release 5.0.16-beta brings more incompatible changes than any previous release. These changes are likely to break almost all plugins written for previous releases of TiddlyWiki 5, and will break many customisations. This release includes a preliminary version of a new plugin that provides compatibility with content created for TiddlyWikiClassic: http://tiddlywiki.com/classicparserdemo.html Subsequent releases will include end-user documentation with step-by-step instructions for migrating content. Many thanks to @buggyj for his work on this plugin. @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release This release includes major improvements from @giffmex to the welcome and tutorial documentation, and new development docs incorporating the work of @cheigele and @cjrk. The issue is that the capitalisation of The use of the As discussed in the associated ticket, the support for regular expression filter operands is incomplete and inconsistent. The plan is to remove support for this feature in the next release. A new filter operator has been provided to replace it, along with the addition of a deprecation warning that is displayed whenever regular expression filter operators are used. The goal is to make the TiddlyWiki repository easier to comprehend for newcomers. @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release This is a minor release prior to the full release of TiddlyWiki on September 20th. The documentation has been cleaned up and improved (with more improvements to come). The layout of files on tiddlywiki.com has been adjusted to make it more logical. See the ticket for a discussion. You can see the source files that make up tiddlywiki.com at https://github.com/Jermolene/jermolene.github.com @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release See GitHub for detailed change history of this release This release includes minor bug fixes and documentation updates.
See GitHub for detailed change history of this release This release includes minor bug fixes and documentation updates.
See GitHub for detailed change history of this release See GitHub for detailed change history of this release See GitHub for detailed change history of this release These are changes that might affect users upgrading from previous betas. See GitHub for detailed change history of this release See Notes for upgrading to 5.0.8-beta for more details of these changes: See GitHub for detailed change history of this release See GitHub for detailed change history of this release This is the first full release of TiddlyWiki. Documentation updates made up the bulk of the changes since the previous 5.0.18-beta release. @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release This is a minor bug fix release to improve the documentation and correct some issues with the first full release of TiddlyWiki. Certain features that were deprecated in Release 5.0.17-beta have now been removed: Note that the next release will also remove support for regular expression filter operands, which was also deprecated in 5.0.17-beta. @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release This release includes several low-level performance optimisations that should improve speed and responsiveness in many common operations. There is a new setting in the control panel to enable performance instrumentation, making it much easier to measure and improve performance issues. Three new editions of TiddlyWiki are included in this release. These can be used as starting points for creating your own wiki for several purposes: Limited support for tiddlers stored in external See Alice in Wonderland for an example. Try opening it without a network connection. A new theme called "Tight" uses reduced padding, margins and font-sizes to pack as much text as possible: @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release This is a bug-fix release for Release 5.1.10 that fixes a serious issue affecting the operation of the official plugin library.
See GitHub for detailed change history of this release Added support for extensible formatting toolbars for the editor widgets. The bitmap editor has been enhanced with a toolbar supporting: Several of the official plugins available in the plugin library have been updated for this release. Upgrading will automatically update any installed plugins. @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release This is a minor bug fix release. @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release This is another small release with documentation updates and a few bug fixes and improvements. @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release These changes are only relevant to people using TiddlyWiki under Node.js @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release This is a small release with documentation improvements and some important bug fixes from Release 5.1.3. These changes are only relevant to people using TiddlyWiki under Node.js @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release These changes are only relevant to people using TiddlyWiki under Node.js @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release These changes are only relevant to people using TiddlyWiki under Node.js @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release This is an hot fix release with the following change over Release 5.1.6: See GitHub for detailed change history of this release This release includes many improvements to the documentation for TiddlyWiki. Many thanks to everyone who has helped out, but especially to our prodigious new contributor Astrid Elocson. These changes are only relevant to people using TiddlyWiki under Node.js @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: See GitHub for detailed change history of this release An experimental plugin to add a simple "Powered by TiddlyWiki" banner to your site. It is included in this prerelease but will not be on the main tiddlywiki.com wiki. It is now possible to arrange the main window so that the sidebar has a fixed width and the story river expands to fill the remaining space. To switch it on, visit Theme Tweaks in the $:/ControlPanel Appearance tab and use the following options: A new setting in $:/ControlPanel Settings tab allows the toolbar button style to be chosen from the following options: Plugins can add new style options. An experimental new tiddler toolbar button opens a single tiddler in a separate pop-up browser window. The tiddler will be dynamically updated just as in the main window. There are several uses: There's a new core palette "Solar Flare", contributed by Rustem Akbulatov (@nameanyone). There are new options for controlling the position in the story river of newly opened tiddlers. Visit the Settings tab of $:/ControlPanel and look for "Tiddler Opening Behaviour". Two new hidden settings for advanced configuration: Added VarsWidget for setting multiple variables in one operation: @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: Here are the details of recent releases of TiddlyWiki5. See TiddlyWiki5 Versioning for details of how releases are named. (BetaReleases and AlphaReleases are listed separately).
Released 25일 7월 2016 at 09:48 See GitHub for detailed change history of this release This is a minor bug fix release. @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: These examples make use of the Days of the Week tiddler. In looking for matches for In looking for matches for 지정된 내용형식으로 개별 티들러를 렌더합니다, 기본값은 기본적으로, 파일이름은 에디션 디렉터리의 파일이름으로의 경로에 없는 디렉터리는 자동으로 만들어집니다.
지정된 내용형식 (기본값은 예를 들어: 기본적으로, 경로이름은 에디션 디렉터리의 noclean 플래그를 지정하지 않는 한 대상 디렉터리의 모든 파일이 삭제됩니다. 대상 디렉터리가 없으면 재귀적으로 만들어집니다.
These examples make use of the Days of the Week tiddler. You can report bugs or problems with TiddlyWiki via our discussion groups. If you have a GitHub account then you can raise an issue there: https://github.com/Jermolene/TiddlyWiki5/issues/new Unless you are already familiar with GitHub, it's usually easiest to report problems through the discussion groups. We use GitHub Issues to manage bug reports and feature requests for TiddlyWiki. To maintain their effectiveness we endeavour to have as few open issues as possible. Open issues should be actionable: generally either a reproducible bug report, or a specific feature request. From the perspective of the core developers, the issues list behaves like a shared todo list. Every item on the list requires a little bit of attention each time we check the list. GitHub Issues are not very good for managing ideas that are not immediately actionable. Better to use the TiddlyWiki discussion groups for open ended questions, or speculative discussions of new features. Before creating a GitHub issue it is good etiquette to search through the existing issues to see whether the problem has already been reported. If a search isn't practical, don't worry too much; GitHub makes it easy to merge existing issues. When you do create an issue, remember that for effective debugging, we need as much information as possible. At a minimum, please try to include: Consider also adding screenshots if it makes things clearer. There's a lot of good material on the web about bug reports: The resolvepath macro takes a relative path and an absolute path. It interprets the former relative to the latter, and returns the absolute equivalent of the former. Folders in the paths are delimited by The special folder name If the absolute path indicates a folder, it needs to end with If no absolute path is supplied, the relative path is returned unchanged, except that anything after the final The return value is a path, but does not end with These are sites with resources created by the TiddlyWiki Community help you get the best out of TiddlyWiki: plugins, macros and more. Submit new entries via GitHub, Twitter or by posting in the TiddlyWiki Groups. A mapping plugin based on Leaflet library. Allows you to create maps based upon geographical data contained in tiddlers. http://sycom.github.io/TiddlyWiki-Plugins/#Leaflet%20plugin The leaflet plugin is a (working) attempt to integrate the leaflet library in TiddlyWiki in order to display geographical purpose tiddlers. For now Have a look at demo page on the web.
NoteSelf is your personal, private, customizable, Evernote-like experience.
You want cloud? Fine! You don't? Fine too! It's all yours, It's your decision!
Why not be a bit selfish? NoteSelf is the perfect place to store your ideas, notes, thoughts, tips, tricks, recipes...
whatever you want to put into it! NoteSelf will store, index, and make it easily
searchable, so you will find it instantly whenever you need it! You already know and love Evernote, we know it. It is comfortable, it syncs, has search capabilities...
Wow, it's almost perfect, but what about: NoteSelf is built on top of TiddlyWiki, a powerful, free, highly customizable and open-source personal wiki.
We took the best of it, it's powerful customization system, and mixed it with one of the best
embedded databases available, PouchDb, for bringing the synchronization capabilities you need.
Slides and Stories is a repository of the tools to optimize TW for scientific research and for presenting and publishing results. http://slidesnstories.tiddlyspot.com ...is a tool to save and reload sets of Tiddlers. This is already working, The aim is to develop a mechanism to transform these into instant slideshows. is a tool which gives you the possibility to attach and show specific information in tabs at the bottom of each Tiddler: ideas, notes, tasks, stories and presentations, comments, annotations and footnotes. A Knowledge Network about TiddlyWiki. http://confocal-manawatu.pbworks.com/w/page/113574373/TiddlyWiki Interconnected with the visual taxonomy at every node:
http://debategraph.org/Stream.aspx?nid=457381&vt=bubble&dc=focus TWKN will be transferred into TWederation/TiddlyMap format as soon as I am convinced in reliable and secure versioning and multi-user operation in TW format.
Your assistance and support would be highly appreciated.
Task & Delegation Tracking, Meetings & Agenda Items, Project Roles, Progress & Status Updates, Reference Items, Tickler Calendar, Conversation Logging, Book Notes & Library, and More! Cardo is a standalone, browser-based tool that can be used as a simple task manager, or as a complex Project Management system (and indeed, I do use it this way in my daily work) as well as a fully Wiki-ized personal knowledge store. It runs completely independently in the browser, even without an Internet connection, making it possible to carry around on a USB stick, or to use on the morning commute.
An enormous collection of tips beautifully curated by Tobias Beer. It is actually a collection of sites, with sub-sites dedicated to topics such as filtering (http://tobibeer.github.io/tw/filters/). http://tobibeer.github.io/tb5/ A collection of references and sandbox for testing concepts around TiddlyWiki 5...
A collection of helpers by Thomas Elmiger, among them a tweet button macro, a text-stretch solution, a snippet extraction macro and a tiddler that installs a scroll-to-top button via drag-and-drop. Quick Extensions for TiddlyWiki 5 – […] As I take from the community, I am happy if I can give back. You can use my stuff to do whatever you like, but remember to save a back-up first.
TiddlyServer is a special purpose Desktop app, designed to facilitate managing multiple instances of TiddlyWiki running as a server. It does not require internet acess to access the wikis. https://github.com/mklauber/TiddlyServer/releases/ TiddlyServer can import both TiddlyWiki files and TiddlyFolder wikis. For each wiki, you specify a prefix to serve it with and the source to import from. It will copy the wikis to its own internal store and begin serving them up at http://localhost:8080/{prefix}/. The export button for each wiki will convert it to a single file wiki. A TiddlyWiki5 forum on Reddit. https://www.reddit.com/r/TiddlyWiki5/ A TiddlyWiki5 forum on Reddit. As of 2016, it claims to have the most up-to-date list of plugins available for TW5.
An adaption of the "Ghostwriter" theme for TiddlyWiki. https://ibnishak.github.io/ghostwriter/ Ghostwriter is a popular, minimalist and mobile responsive theme for the blogging platform ghost. This is an adaptation for TiddlyWiki.
An adaption of the "Moments" theme for TiddlyWiki. http://tesseractmoments.surge.sh/ Moments is a beautiful free and responsive theme available for wordpress from here: http://www.s5themes.com/theme/moments/. This is an adaptation of the same for TW5 platform. All the design credits goes to the site and the original designer. If TW5 is going to be here for 25 years, might as well suit up.
An explainer about Twederation, a system of sharing information between TiddlyWiki instances. TWederation is a system for sharing information between participating TiddlyWikis without using a client-server model. The link here points to a tiddler that gives more details. This particular implementation works something like an online forum. On the rest of the site, you can follow discussions by the developers and collaborators occurring within the Twederation "network" itself.
Creates bubble maps of Biblical texts. http://giffmex.org/gospels.bubbles.html#Gospels%20Bubbles This TiddlyWiki, which is still under construction, has several features that together make it lightning fast to find passages, types of passages, themes, people, places and images in the New Testament Gospels. The bubblemaps are color-coded overviews of each Gospel. Each type of passage (miracle story, parable, etc) was assigned a color. Bubblemaps allow you to do three things: This wiki gives examples for various filters and their use in the list widget http://tobibeer.github.io/tw/filters/#Filter%20Examples This wiki gives examples for various filters and their use in the list widget. A good starting point to understand what filters yield which results also is test-filters.js.
A collection of plugins by Stephen Kimmel, including a number of additional editor toolbar buttons. http://skplugins.tiddlyspot.com/ In keeping with the general spirit of the TiddlyWiki community, ie, you develop something useful and/or potentially interesting you share it with others, I'm sharing some of the plugins I've developed to go with the new Editor Toolbar. You'll find them and a more extensive discussion of what each does at http://skplugins.tiddlyspot.com/
A collection of extensions by @malgam http://malsandbox.tiddlyspot.com The "loadnew" plugin provides the JavaScript module $:/plugins/malgam/loadnew/loadnew.js that implements an incremental load command for Tiddlywiki 5. The javascript code is based on the built-in module $:/core/modules/commands/load.js that loads tiddlers from a Tiddlywiki file into a node.js Tiddlywiki instance. This command loads all non-system tiddlers, irrespective of whether they have been modified since last loaded. As a result, all tiddlers in the node.js tiddlers folder will end up with a new modification date. In contrast, the loadnew command only loads tiddlers that either don't already exist in the tiddlers folder, or have a newer modified date than the existing tiddler. With a backup strategy that uses a file system snapshot process to preserve historical versions of tiddlers, the loadnew command minimises the sizes of the resulting snapshots.
An authentication proxy for your TiddlyWiki. https://github.com/stevenleeg/twproxy One of my favorite aspects of TiddlyWiki has been that it's web-based, making it possible for me to access my wiki from everywhere (especially my phone). That being said, I'm a bit paranoid, so I was left a bit unsatisfied with the tiddlywiki server's HTTP basic auth for protecting my wiki. ~23 commits later, I've created something called twproxy that I'd like to share with you all today, as I'm hoping somebody other than myself will find it useful. Essentially it is a simple proxy that puts your wiki behind a username, password, and optional 2-factor auth prompt. This gives you added security in addition to the ability to remember your credentials past one browsing session (I was getting sick and tired of typing my username/password in over and over using basic auth).
Sublime Text 3 syntax file for TiddlyWiki5 An extension application for Google Chrome that enables TiddlyWiki to save changes directly to the file system. An interactive date picker plugin based on Pikaday. A demo can be found here: http://kixam.github.io/TW5-datePicker/. datepicker is a TiddlyWiki plugin that allows you to use a widget much like EditTextWidget to pick a date, and optionaly a time. It shows a nice interactive mini-calendar when clicked, allows you to set a date format for display, and is compatible with core date fields such as An extensive tutorial for getting started with TiddlyWiki. Recommended https://www.youtube.com/playlist?list=PLzZCajspPU_UjFn0uy-J9URz0LP4zhxRK This tutorial is aimed at giving you a basic foundation so that you can start using TiddlyWiki right away. Here we take a look at the technology behind Tiddlywiki, how to install it and create your first Tiddler.
The CommunitySearch wiki aggregates many public wikis from the community. It is updated automatically every day. At the time of writing, more than 5000 tiddlers are indexed, thus giving access to the largest known collection of TW content. It lets you search for some specific content among a preselected list of wikis. The indexed content is mostly focused on TW usage, so you would typically use this search system to find information about a particular aspect of TiddlyWiki. Say for example that you want to learn how to make a table of content, type "table of content" in the CommunitySearch box (also accessible in the default tiddler GettingStarted). The search results are links to various wikis, and point directly to the specific tiddlers containing your request. The CommunitySearch wiki also lets you: A catchy jingle for TiddlyWiki. https://musescore.com/node/796056 Even if it sounds like some ol' jazz tune it IS an original composition and it should be quite obvious that the "hook of the melody" is a trill made by singing Tidd-ly Wiki :-). My lacking skills for writing text/lyrics should be apparent in the fact that the text consists of 12 Tidd-ly Wikis and some extra "tiddly's" - just for the sake of getting the message delivered ;-)... I've recorded every instrument on my guitar via a guitar synth on a loop machine (except for the drums - they were played live/in sync with the loop station on a "BeatBuddy" drum pedal..) - no pc was involved..
Featuring plugins that integrate two interesting new capabilities: I developed some plugins related to engineering tasks. After using them for personal projects I'm glad to share with TiddlyWiki community.
A plugin that allows to encrypt your tiddlers individually Danielo Rodriguez. http://danielorodriguez.com/TW5-EncryptTiddlerPlugin/ Advantages: A collection of hints and tips, musings and proposals from long-time TiddlyWiki contributor Mat Goldman. http://twaddle.tiddlyspot.com/ This is Mat's, a.k.a <:-) little man-cave in the TiddlyVerse. Most TW development is, understandably, based on the premise that "Improve code ➔ Better TW". TWaddle is also about developing TW but from the perspective that Bigger community ⇄ Better TW. Thus, TWaddle looks more to people issues - how to attract them, how to make them stick with TW etc. I'm not a programmer but I am a TW enthusiast so I tiddlefiddle enough to make the occasional discovery of something cool. Given the amount of words I utter, it is also a mere numbers game before I say something that makes sense. TWaddle is intended to capture these eventualities.
An interactive timeline visualisation plugin based on Vis.js. A demo can be found here: http://kixam.github.io/TW5-visjsTimeline/. vis.js Timeline is a TiddlyWiki plugin that allows you to link your wiki-topics (tiddlers) in order to create clickable timelines. This project is a direct continuation of emkay's plugin.
A simple technique for adding tag-based cross references to the default view template. See also: - is a feature to generate a "See also:" section after the tiddler text, somewhat like in Wikipedia articles.
A collection of community tips and tutorials curated by Andreas Hahn, including a handy "customiser" that simplifies creating an empty TiddlyWiki with selected plugins and enhancements. Updated to include Tinka, a plugin that "provides a GUI to create and modify plugins more easily, therefore saving time on the packaging process". The intent of the project is to encourage people to use and actively tweak TiddlyWiki according to their needs. Similar to the old version, I also want to encourage people to share their knowledge and help other people get the most out of this wonderful piece of wiki software.
A plugin to integrate the Ace editor into TiddlyWiki. Being quite new to TW5 development I tried my best to draft a SyncAdaptor to store tiddlers in IndexedDb. This is quite useful if an application / plugin installation is not possible (we have quite some restrictions at work...).
A plugin that allows changes to be synchronised with the IndexedDB database that is built-in to most browsers. Being quite new to TW5 development I tried my best to draft a SyncAdaptor to store tiddlers in IndexedDb. This is quite useful if an application / plugin installation is not possible (we have quite some restrictions at work...).
An alternative LaTeX plugin for TiddlyWiki5. It supports a wider set of LaTeX commands than KaTeX, though not as extensive as MathJax http://tw5-texzilla.tiddlyspot.com This plugin provides LaTeX support in TiddlyWiki5, using the TeXZilla latex parser to generate MathML. Only Firefox and Safari support MathML at the moment, so the plugin is only useful if you're using one of these browsers. It might be possible to combine this plugin with MathJax to convert MathML to something that other browsers can understand, e.g. HTML+CSS, but I haven't tried this.
An adaptation of the TiddlyWiki powered GTD® system formerly known as MonkeyGTD for TiddlyWiki version 5. GSD5 is a Getting-Thing-Done tool for TiddlyWiki5 based off the mGSD classic TiddlyWiki.
A guide in Russian to creating an online shop with TiddlyWiki. No serverside code is needed, instead orders are handled by Disqus. An interactive network visualisation plugin based on Vis.js. A demo that also contains installation instructions can be found here: http://tiddlymap.org. The plugin's GitHub repository can be found here. TiddlyMap is a TiddlyWiki plugin that allows you to link your wiki-topics (tiddlers) in order to create clickable graphs. By creating relations between your topics you can easily do the following: In general you may create, visualize and describe any network-structure you have in mind.
An extensive collection of hints and tips from Jed Carty. http://inmysocks.tiddlyspot.com I made this so that some of my friends with absolutely no coding experience could use some of the better features of TW5 without having to learn much. I am hopefully going to continue updating it as I learn new things. There isn't really anything here that isn't available in plenty of other places, but I figured that since I spent a while putting it together and people keep saying that TW needs more documentation I would post it here.
A collection of tips and guides in French, introduced by this blog post: http://sylvain.naud.in/post/2014/10/29/Ressources-pour-TiddlyWiki-5-%28FR%29 Ce guide de prise en main de TiddlyWiki vous permettra de débuter sur ce logiciel : rédiger du texte avec la syntaxe wiki, insérer des images, créer des Tiddler, faire une recherche, ajouter des fonctionnalités, et bien d'autres choses.. Bonne lecture ! Sylvain
An extensive collection of tips and resources for users of TiddlyWiki in Japanese. http://bacchus.ivory.ne.jp/bourbon/ TiddlyWikiをHTML5にしたTiddlyWiki5が正式にリリースされました。このTiddlyWiki5の使い方について、自分で試した機能を中心に解説します。 TiddlyWiki5は、非常に多機能なローカルWikiです。このブログに書いてあることは、TiddlyWiki5で出来ることのごく一部です。
A wealth of hints, tips and notes about using TiddlyWiki on Node.js: http://larigot.avarts.ionio.gr/users/iani/wikis/tw5square.html TiddlyWiki is different from other wikis because of its principle of dynamically customizeable "storyline" based on tiddlers as basic units of information. That is, the user "composes" their own version of the webpage by clicking on tiddler links, which add tiddlers to the page in order to compose a storyline. The Node.js implementation in TiddlyWiki5 adds all the advantages of flat-file markup language based type of site. This makes TiddlyWiki an excellent alternative to flat-file based CMS/webpage/blog authoring systems for the web. Also very cool is the treatment of tags as menus everywhere.
An adaptor to enable TiddlyWiki to sync changes with a CouchDB database. https://github.com/wshallum/couchadaptor CouchDB sync adaptor for TiddlyWiki 5. Requires TiddlyWiki >= 5.1.2. Works in limited testing. Not sure how well it handles conflicts.
I collect my tw5 creations on-line as http://eucaly-tw5.tiddlyspot.com/ Available Plugins : BuggyJay's TiddlyClip browser extension for Firefox permits clipping of text and graphics from web pages: http://tiddlyclip.tiddlyspot.com TiddlyClip allows parts of webpages to be clipped into a TiddlyWiki, and consists of two parts, the browser addon and the TiddlyWiki plugin. The addon is completely memoryless, any configuration is determined by the current TiddlyWiki that the user has select to work with (we say that the addon is docked to the TiddlyWiki). TiddlyClip is designed to work (in a basic mode) without configuration. Once the addon and plugin are installed, all the user has to do is select which TW to dock to.
A collection of plugins from TheDiveO. TheDiveO's Third Flow plugin construction system: The ThirdFlow plugin brings to you another way to develop customization plugins for TiddlyWiki 5. It is not enforcing a specific development flow, it simply tries to help you. Otherwise, it tries to stay out of your way.
TheDiveO's FontAwesome plugin: The FontAwesome plugin supports embedding Font Awesome in TiddlyWiki 5. There is no need to install this font into your operating system in order to use it with TiddlyWiki 5. The font is already embedded in this TiddlyWiki 5 customization plugin instead, so nothing else to install.
An early release of an edition of TiddlyWiki customised for rigorous, academic notetaking. http://tw5.scholars.tiddlyspot.com/ TiddlyWiki for Scholars is a personal customization of TiddlyWiki 5.0.13-beta I made for note-taking from readings, but it can be useful for other purposes. The idea behind this adaptation is to show and to allow creating relevant data related to the current tiddler without leaving the tiddler.
Matabele's stylish and clean system for personal task management. This is my work in progress version of TW5, incorporating various features and ideas as and when they intrigue me. To grab any feature you may wish to try, drag the listed tiddlers across to the dropzone of an empty TiddlyWiki 5.0.10-beta
A collection of TiddlyWiki resources from Mario Pietsch, with a focus on cloud deployments. Mario also maintains the German translation of TiddlyWiki. My name is Mario Pietsch from Austria. I'm living near Salzburg. This page, will be the portal to my TiddlyWiki, TiddlyWeb related content.
An experimental MathJax plugin for TiddlyWiki version 5. As Martin says, the implementation is a bit of a hack but may be useful until we have a better alternative. http://mathjax-tw5.kantorsite.net Welcome. I have created plugin for TiddlyWiki 5 which allows you to use MathJax (math in TeX and MathML) inside TiddlyWiki 5. It's unofficial plugin and it doesn't follow general policy of TiddlyWiki as stand-alone solution but it works. So you can use it if you want.
Notes and tips by a developer working on writing TiddlyWiki plugins – including TWExe, a widget for running Windows scripts and executables. A translation of the tiddlywiki.com documentation from Bram Chen, TiddlyWiki's Chinese translator. buggyj has created several useful plugins, including a WYSIWYG HTML editor, a configurable calendar and tag lists with draggable ordering. Chris Hunt's detailed developer tutorials for getting started with writing widgets for TiddlyWiki. These pages document aspects TiddlyWiki5 programming, sharing "lessons learned" to help developers to get started with TiddlyWiki5 customization and extension. There are currently two articles in this wiki: A collection of customisations and macros from Danielo Rodriguez. http://braintest.tiddlyspot.com/ This is my personal tiddlywiki file for testing. Here I will post the tools and Macros that I develop for this awesome tool. That way, all the help the comunity gave me can came back to the comunity again.
Huge collection of customisations and tweaks from Ton Gerner. http://tongerner.tiddlyspot.com/ I am a longtime user of TiddlyWiki Classic and still use it daily since you can't do everything in TiddlyWiki 5 (yet) ;) I started experimenting with TW5 at the end of September 2013 (alpha10).
Since I missed a few things in the layout I got used to in TiddlyWiki Classic 1, I started with modifying the layout of TW5.
To share my knowledge, I made a few guides about these 'modifications'.
The guides started as a non-linear personal web notebook (yeah, the subtitle of TiddlyWiki!). I started experimenting with layout things and used TW5 to document my experiments.
Stephan Hradek's growing catalogue of tips, tutorials, and other resources. Stephan has also developed several plugins and macros that you can find at http://tiddlystuff.tiddlyspot.com/. http://tw5magick.tiddlyspot.com/ Some things in TiddlyWiki seem like Magic. As my preferred nick is Skeeve, I felt that TW5 Magick is a proper name for this collection of some of the "magic" tricks one can do with TiddlyWiki.
A collection of articles covering integration with Fargo, Font Awesome and Google Calendar, and tips for managing task lists. http://blog.jeffreykishner.com/tiddlywiki/ I have become a regular user of TiddlyWiki and have become so accustomed to using Font Awesome icons in Fargo that I wanted to incorporate the icons into my wikis as well.
These examples make use of the Days of the Week tiddler. The Résumé Builder edition of TiddlyWiki gets you started with a simple way to create a professional resume that you can save to the web or print. The reveal widget hides or shows its content depending upon the value of a state tiddler. The type of the widget determines the condition for the content being displayed: The content of the Retaining the content when hidden can give poor performance since the hidden content requires refresh processing even though it is not displayed. On the other hand, the content can be revealed much more quickly. Note that setting animate="yes" will also force retain="yes". Here's a simple example of showing and hiding content with buttons: That renders as:
An "accordion" or "slider" is a button that can be used to toggle the display of associated content. That renders as: Here is a simple example of a popup built with the RevealWidget: That renders as:
Here is a simple example how to use text references with field content to control the RevealWidget. If the field That renders as:
TiddlyWiki!
There are still some areas of TiddlyWiki that have not been fully developed beyond the experimental stage: Also see the issues list on GitHub: https://github.com/Jermolene/TiddlyWiki5 Safe mode provides a way to disabling most customisations in TiddlyWiki. This is useful because if TiddlyWiki is customised incorrectly it can be rendered inoperable. A particular issue is that some customisations break when upgrading to a newer core version of TiddlyWiki (especially during the beta). Safe mode is enabled in the browser by starting TiddlyWiki with the URL hash set to the string Safe mode triggers two changes: A report tiddler is displayed that allows you to inspect the tiddlers that were renamed.
If This is a demonstration alert. Note that the trashcan icon deletes the tiddler containing this alert. You can also remove it by opening the tiddler SampleAlert and editing it to remove the tag $:/tags/Alert.
지정한 디렉터리로 raw 텍스트 또는 바이너리 형식의 티들러의 그룹을 저장합니다. 기본적으로, 경로이름은 에디션 디렉터리의 출력 디렉터리에는 지정된 파일을 저장하기 전에 기존 파일이 지워집니다. 삭제는 noclean 플래그를 지정하여 비활성화할 수 있습니다. 경로이름에 없는 디렉터리는 자동으로 만들어집니다.
This plugin causes TiddlyWiki to continuously download (as a JSON file) the contents of any tiddler that is manually changed by any of several means: Where appropriate, separate 'before' and 'after' files are downloaded. Configured correctly, the browser will download the files silently in the background, and they can be used as a backup in case of accidental data loss. The built-in These are preliminary instructions that need verification The control panel Saving tab includes the following configuration options: As your TW file increases in size, you may need to modify your The AndTidWiki app for Android devices makes it possible to edit and save changes to TiddlyWiki5, including working offline without a network connection. Download it here. Instructions for use: Note: You can save your changes by clicking the save changes button in the sidebar even if you have not clicked the ok button to complete editing a tiddler Note that AndTidWiki is published independently of TiddlyWiki By default, TiddlyWiki saves changes on InternetExplorer 10 and above using a saver module that downloads the newly modified file, rather than saving it directly. There are two alternatives that both save changes directly to the file: The iPad/iPhone app TWEdit makes it possible to edit and save changes to TiddlyWiki5, including working offline without a network connection. Download it here. Instructions for use: Note that TWEdit is published independently of TiddlyWiki This method of saving changes is clunky because it requires manual intervention for each save. If the button doesn't work save this link: http://tiddlywiki.com/empty.html Your browser may ask you to accept the download before it begins TiddlySpot is a free hosting service for TiddlyWiki documents from Simon and Daniel Baird. The easiest way to get started is to sign up for a new wiki at http://tiddlyspot.com - by default you'll get the latest release of TiddlyWiki Classic. You can upload an existing TiddlyWiki5 document from your local disc to TiddlySpot by following these steps: Note that your password is sent unencrypted when using TiddlySpot. From http://faq.tiddlyspot.com/: Is Tiddlyspot secure? No. Tiddlyspot does not use SSL/https. Your password is sent in clear text when uploading and when authenticating to access a private site. This means that your Tiddlyspot is vulnerable to packet sniffing and your password could be discovered by a malicious third party. Also your data is transmitted unencrypted when you view your site, even if it is a private site. For this reason please don't put sensitive information such as banking details in your Tiddlyspot and don't use a password that you use for other high security sites.
In case you run into this error when uploading a new or freshly upgraded local TiddlyWiki to TiddlySpot : Error while saving: Error:NS_ERROR_DOM_BAD_URI: Access to restricted URI denied
The upgrade operation falls foul of a security restriction in Firefox. Until this can be resolved, we suggest using Chrome. This method of saving changes is clunky because it requires manual intervention for each save. It has the advantage of working on almost all desktop browsers, and many mobile browsers. If the button doesn't work save this link: http://tiddlywiki.com/empty.html Your browser may ask you to accept the download before it begins Tip: most browsers have an option to prompt each time for the download location. This allows you to select the existing version of the file and replace it.
If you're using Firefox for Android, see the instructions for Saving with TiddlyFox on Android. (Alternatively, see the video tutorial) (to save the link, ensure you've installed the "save-link-menus" extension and then long-press on the link and choose "Save link") You may also see a prompt to enable the Microsoft Script Runtime The SavingMechanism is the mechanism by which TiddlyWiki generates a new HTML file and stores it. It is different from the sync mechanism, which is concerned with synchronising changes to individual tiddlers back to a server (see http://tiddlywiki.com/dev/#SyncAdaptorModules for more details). The following steps are involved: You might expect that TiddlyWiki's architecture as a SinglePageApplication would make it unsuitable for large amounts of data. In fact, TiddlyWiki users regularly work with files that are 20 or 30 megabytes without problems - and successful experiments have been done up into the gigabytes. The TiddlyWiki5 repository contains several scripts in the All the scripts expect to be run from the root folder of the repository. Or: This script starts TiddlyWiki5 running as an HTTP server, defaulting to the content from the To experiment with this configuration, run the script and then visit Changes made in the browser propagate to the server over HTTP (use the browser developer console to see these requests). The server then syncs changes to the file system (and logs each change to the screen). This script runs the Or: This script serves the This script builds TiddlyWiki 2.6.5 from the original source and then displays the differences between them ( The scrollable widget wraps its content in a scrollable frame. The user can scroll the contents with the mouse or with touch gestures. Code can use the WidgetMessage: tm-scroll to programmatically scroll specific DOM nodes into view. The content of the If a scrollable widget can't handle the This example requires the following CSS definitions from $:/_tw5.com-styles: This wiki text shows how to display a list within the scrollable widget: That renders as: AllTiddlers: License:
$:/core/copyright.txt
ShadowTiddlers
TiddlyWiki
TableOfContents: About:
TiddlyWiki
Acknowledgements:
Community
TiddlyWiki
Contributors: Developers:
TiddlyWiki
History of TiddlyWiki:
ActiveX
BT
GTDTiddlyWiki
JavaScript
JeremyRuston
LifeHacker
Osmosoft
SocialText
TiddlySpace
TiddlyWeb
TiddlyWiki
TiddlyWiki5
UnaMesa
Philosophy of Tiddlers:
Structuring TiddlyWiki
Tiddlers
TiddlyWiki
BuildCommand:
TiddlyWikiFolders
ClearPasswordCommand: Commands:
TiddlyWiki on Node.js
EditionsCommand: FetchCommand: HelpCommand: InitCommand:
Environment Variables on Node.js
LoadCommand: MakeLibraryCommand:
UpgradeMechanism
OutputCommand: PasswordCommand: RenderTiddlerCommand: RenderTiddlersCommand: SaveTiddlerCommand: SaveTiddlersCommand: ServerCommand: SetFieldCommand: UnpackPluginCommand: VerboseCommand: VersionCommand: Community:
TiddlyWiki
Contributing:
HelpingTiddlyWiki
Improving TiddlyWiki Documentation
ReportingBugs
TiddlyWiki
Contributor License Agreement:
OpenSource
TiddlyWiki
TiddlyWiki5
UnaMesa
Forums:
TiddlyDesktop
TiddlyFox
TiddlyWiki
TiddlyWiki Hangouts
TiddlyWikiDev
HelpingTiddlyWiki:
Contributing
GitHub
OpenSource
TiddlyWiki
Improving TiddlyWiki Documentation:
Contributor License Agreement
Documentation Style Guide
Signing the Contributor License Agreement
TiddlyWiki
Latest: Meetups:
OXTWIG
TiddlyWiki
TiddlyWiki Camp Paris
TiddlyWiki European Meetup 2016
OXTWIG:
TiddlyWiki
ReportingBugs:
Forums
GitHub
TiddlyWiki
Resources:
Community
Forums
GitHub
Signing the Contributor License Agreement:
GitHub
TiddlyWiki Camp Paris:
TiddlyWiki
TiddlyWiki Hangouts:
TiddlyWiki
TiddlyWiki European Meetup 2016: Translate TiddlyWiki into your language:
GitHub
TiddlyWiki
Tutorials: "A free, open source wiki revisited" by Mark Gibbs, NetworkWorld:
TiddlyWiki
"Notizen mit TiddlyWiki systemübergreifend nutzen" by Michael Sonntag:
TiddlyWiki
"Setting Up a Personal TiddlyWiki Server on OS X" by Kris Johnson:
TiddlyWiki
TiddlyWiki on Node.js
"TiddlyWiki 5 im Betatest" by besim:
JavaScript
TiddlyWiki
TiddlyWiki5
TiddlyWikiClassic
"TiddlyWiki" by Sander de Boer:
JavaScript
NoScript
TiddlyWiki
"A Thesis Notebook" by Alberto Molina:
TiddlyWiki
Interactive Git Documentation by Devin Weaver: Obadiah TOC: PESpot Lesson Planner by Patrick Detzner:
TiddlyWiki
"PETTIL - Forth for the Commodore PET" by Charlie Hitselberger:
TiddlyWiki
Simple Zork-like Game by Jed Carty:
TiddlyWiki
TriTarget.org by Devin Weaver:
TiddlyWiki
TriTarget
Ace Editor Plugin by Joerg Plewe:
IndexedDb
SyncAdaptor
TiddlyWiki
"BJTools" by buggyj: "BrainTest - tools for a digital brain" by Danielo Rodriguez: "CouchDB Adaptor" by William Shallum:
CouchDB
TiddlyWiki
"Encrypt single tiddler plugin" by Danielo Rodriguez: Eucaly's Tiddly World:
FieldFilter
FlexWidth
MatchFilter
MonkeyTaggerMacro
PopupTagger
QuickJump
TagBar
TagTable
TiddlyWiki
TitleMe
"Filter Examples" by Tobias Beer:
Filters
ListWidget
"GSD5" by Roma Hicks:
TiddlyWiki
TiddlyWiki5
"Gospel Bubbles" by Rev. David Gifford: "Heeg.ru" by sini-Kit:
TiddlyWiki
"How Does Twederation Work" by Jed Carty:
TiddlyWiki
IndexedDB Plugin by Andreas Abeck:
IndexedDB
IndexedDb
SyncAdaptor
Leaflet maps plugin by Sylvain Comte:
Filters
GeoTiddler
TiddlyWiki
MathJax Plugin by Martin Kantor:
MathJax
MathML
TeX
TiddlyWiki
Plugins by TheDiveO:
FontAwesome
TheDiveO
TiddlyWiki
SeeAlso by Matias Goldman: "TB5 - a pocket full of tips" by Tobias Beer:
TiddlyWiki
"TW5 Magick" by Stephan Hradek:
TiddlyWiki
TWCommunitySearch:
TiddlyWiki
TWGuides by Andreas Hahn:
TiddlyWiki
TWaddle by Matias Goldman:
Bigger community ⇄ Better TW
TiddlyWiki
TiddlyChrome by Arlen Beiler:
TiddlyWiki
TiddlyClip by buggyjay:
BuggyJay
Firefox
TiddlyClip
TiddlyWiki
TiddlyMap Plugin by Felix Küppers:
GitHub
TiddlyWiki
TiddlyWiki Jingle by Måns Mårtensson:
TiddlyWiki
"TiddlyWiki Notes" by James Anderson:
TiddlyWiki
"TiddlyWiki Posts" by Jeffrey Kishner:
TiddlyWiki
TiddlyWiki Video Tutorials by Francis Meetze:
TiddlyWiki
TiddlyWiki extensions for Sublime Text 3 by roma0104:
TiddlyWiki5
TiddlyWiki extensions for ViM:
TiddlyWiki5
"TiddlyWiki for Scholars" by Alberto Molina:
TiddlyWiki
"TiddlyWiki guide FR" by Sylvain Naudin:
TiddlyWiki
"TiddlyWiki 舞" by Bram Chen:
TiddlyWiki
"TiddlyWiki5 Coding" by Chris Hunt:
TiddlyWiki
TiddlyWiki5
"TiddlyWiki5 Playground" by Ton Gerner:
TiddlyWiki
"TiddlyWiki5^2 documenting while learning TiddlyWiki5" by Iannis Zannos:
TiddlyWiki
TiddlyWiki on Node.js
TiddlyWiki5
"Wills Q&D gTD" by Matabele:
TiddlyWiki
"Cardo - Task and Project Management Wiki" by David Szego: "Ghostwriter theme by Rory Gibson" adapted for TW5 by Riz: "Hacks" by Thomas Elmiger: "In My Socks" by Jed Carty: "Lucky Sushi" online shop by sini-Kit: "Mal's Sandbox" by Mal:
$:/core/modules/commands/load.js
$:/plugins/malgam/loadnew/loadnew.js
JavaScript
"Moments: A little color won't hurt" by Riz: "Noteself" by Danielo Rodríguez: "SK Plugins" by Stephen Kimmel:
TiddlyWiki
"Slides and Stories" by Jan: "TW5-TeXZilla" plugin by Joe Renes:
KaTeX Plugin
LaTeX
MathJax
MathML
TiddlyWiki5
"TWeb.at" by Mario Pietsch:
TiddlyWeb
TiddlyWiki
"TiddlyServer" by Matt Lauber:
TiddlyFolder
TiddlyServer
TiddlyWiki
"TiddlyWiki Knowledge Network" by Dmitry Sokolov: "TiddlyWiki5 Bourbon" by mkt_memory:
TiddlyWiki
TiddlyWiki5
"TiddlyWiki5 Forum on Reddit" by Riz:
TiddlyWiki5
datepicker plugin based on Pikaday, by kixam:
EditTextWidget
TiddlyWiki
rboue's plugins for TiddlyWiki:
TiddlyWiki
twproxy by Steve Gattuso:
TiddlyWiki
vis.js Timeline by emkay, revived by kixam:
TiddlyWiki
"Creating a baby journal with TiddlyWiki 5" from A Penguin in Redmond:
TiddlyWiki
"Install and run TiddlyWiki on a CentOS 6 VPS using Nginx" from RoseHosting:
TiddlyWiki
"Microblogging con Tiddlywiki" by Juan:
TiddlyWiki
"デザイン刷新。次の25年を目指すTiddlyWiki" by Moongift:
TiddlyWiki
"Shining Ark Using TiddlyWiki" by Helu:
TiddlyWiki
"TW5 Tribal Knowledge" from Scott Kingery:
TiddlyWiki
"Un wiki sur votre BiblioBox avec TiddlyWiki" from A Penguin in Redmond:
BiblioBox
TiddlyWiki
ColourPalettes:
$:/palette
CSS
DataTiddlers
Concepts:
TiddlyWiki
Current Tiddler:
storyTiddler Variable
TemplateTiddlers
WikiText
DataTiddlers:
ActionListopsWidget
ActionSetFieldWidget
DictionaryTiddlers
JSONTiddlers
TextReference
Date Fields:
DateFormat
TiddlerFields
TiddlyWiki
DictionaryTiddlers:
$:/palettes/Vanilla
ColourPalettes
ContentType
DataTiddlers
Dominant Append:
Filters
Title Selection
ExternalImages:
$:/core/templates/canonical-uri-external-image
TiddlyWiki
TiddlyWikiFolders
Filters:
$:/AdvancedSearch
CountWidget
Filter Operators
Filter Syntax
Introduction to filter notation
ListWidget
TiddlyWiki
Title Selection
Hard and Soft Links:
Macros
Transclusion
Variables
WikiText
InfoPanel:
ShadowTiddlers
TiddlerFields
Using links to navigate between tiddlers
JSONTiddlers:
$:/HistoryList
ContentType
DataTiddlers
JavaScript Object Notation
Macros:
Core Macros
Linking in WikiText
Macros in WikiText
Pragma
Transclusion
Transclusion and Substitution
Variables
Widgets
WikiText
Messages: ModuleType:
Modules
Modules:
$:/ControlPanel
JavaScript
ModuleType
TiddlyWiki5
Order of Tagged Tiddlers:
Title List
PermaLinks:
$:/ControlPanel
Filters
TiddlyWiki
Railroad Diagrams:
Railroad Plugin
Selection Constructors:
Filter Operators
Filter Run
Filters
Title Selection
ShadowTiddlers:
Plugins
ShadowTiddlers
Story River:
Tiddlers
SystemTags:
TiddlyWiki
SystemTiddlers:
Tiddlers
TiddlyWiki
TagTiddlers:
InfoPanel
TemplateTiddlers:
Current Tiddler
TiddlyWiki
Transclusion
Transclusion with Templates
ViewTemplate
WikiText
TextReference:
Current Tiddler
DataTiddlers
Filter Parameter
Filters
HTML in WikiText
LinkCatcherWidget
RevealWidget
TextReference
TiddlerFields
TiddlerFields:
$:/ControlPanel
BagField
CaptionField
ColorField
CreatedField
CreatorField
DescriptionField
DraftOfField
DraftTitleField
FooterField
LibraryField
ListField
ModifiedField
ModifierField
NameField
PluginPriorityField
PluginTypeField
RevisionField
SourceField
SubtitleField
TagsField
TextField
TiddlerFields
Tiddlers
TiddlyWebAdaptor
TitleField
TypeField
TiddlerLinks:
$:/core/copyright.txt
$:/SiteTitle
ATiddlerThatDoesntExist
Filters
InfoPanel
StoryView
TiddlerLinks
TiddlyWiki
TiddlyWiki5
Tiddlers:
JavaScript
TiddlerFields
TiddlyWiki
TiddlyWiki:
Community
JeremyRuston
License
ListField
Macros
OpenSource
Philosophy of Tiddlers
Structuring TiddlyWiki
Tagging
TiddlerLinks
Tiddlers
WikiText
TiddlyWiki5:
JavaScript
Node.js
TiddlyWiki
TiddlyWikiFolders:
Customising Tiddler File Naming
PluginFolders
TiddlerFiles
TiddlyWiki on Node.js
tiddlywiki.files Files
tiddlywiki.info Files
TiddlyWiki5
TiddlyWikiFolders
Title List:
Filters
ListField
PermaLinks
Title Selection
Title Selection:
Filters
Title List
Transclusion:
Philosophy of Tiddlers
TemplateTiddlers
TextReference
TranscludeWidget
Transclusion and Substitution
Transclusion Basic Usage
Transclusion in WikiText
Transclusion with Templates
Wiki:
WikiStore
WikiText:
Formatting text in TiddlyWiki
WikiText
Customise TiddlyWiki:
TiddlyWiki
Customising search results:
$:/config/SearchResults/Default
$:/core/ui/DefaultSearchResultList
$:/tags/SearchResults
Page and tiddler layout customisation:
$:/config/ViewToolbarButtons/Visibility/Recipe
$:/core/images/
$:/core/ui/
$:/core/ui/SideBar/More
$:/tags/EditTemplate
$:/tags/ViewToolbar
SystemTag
SystemTags
TiddlyWiki
ViewToolbar
BT:
JeremyRuston
Osmosoft
Base64: CamelCase:
CamelCase
Cascading Style Sheets: Comma-Separated Values: ContentType:
Cascading Style Sheets
Comma-Separated Values
TiddlyWiki
Data URI:
Cascading Style Sheets
Definitions:
Concepts
TiddlyWiki
Document Object Model:
TiddlyWiki on Node.js
Widgets
FederatialLimited:
JeremyRuston
GitHub:
GitHub
TiddlyWiki
GuerillaWiki:
GuerillaWiki
TiddlyWiki
HyperText Markup Language:
WikiText
JavaScript Object Notation:
DataTiddlers
JavaScript: JeremyRuston:
TiddlyWiki
Jermolene:
JeremyRuston
MathML:
MathML
TiddlyWiki5
WikiText
NW.js:
Node.js
OpenSource
TiddlyWiki
TiddlyWiki on NW.js
Node.js:
JavaScript
TiddlyWiki on Node.js
OpenSource:
OpenSource
Osmosoft:
BT
JeremyRuston
TiddlyWiki
Percent Encoding:
URI
Quine:
TiddlyWiki
SingleFileApplication:
SinglePageApplication
TiddlyWiki
SinglePageApplication:
SingleFileApplication
SinglePageApplication
TiddlyWiki
Stanford JavaScript Crypto Library: TiddlyDesktop:
GitHub
Introducing TiddlyDesktop Video
NW.js
OpenSource
TiddlyDesktop
TiddlyDesktop Releases
TiddlyWiki
TiddlyWikiClassic
TiddlyFox:
Firefox
GitHub
Saving with TiddlyFox
Saving with TiddlyFox on Android
TiddlyFox
TiddlyWiki
TiddlyIE:
Saving with TiddlyIE
TiddlyIE
TiddlyWiki
TiddlySpace:
BT
Osmosoft
TiddlySpace
TiddlyWeb
TiddlyWeb:
BT
Osmosoft
Tiddlers
TiddlyWeb
TiddlyWiki
TiddlyWiki5
TiddlyWikiClassic:
MarioPietsch
TiddlyWiki
TiddlyWikiClassic
URI: node-webkit:
NW.js
Alice in Wonderland: Caruso - Ave Maria: GroupedLists:
$:/core/ui/MoreSideBar/Types
$:/core/ui/SideBar/Recent
ImageGallery Example:
$:/tags/Image
ListWidget
TranscludeWidget
SampleAlert:
$:/tags/Alert
SampleAlert
SampleNotification: SampleTabFour: SampleTabOne: SampleTabThree: SampleTabTwo: SampleTiddlerFirst:
SampleTiddlerFirst
SampleTiddlerSecond:
SampleTiddlerSecond
SampleTiddlerThird:
SampleTiddlerThird
SampleWizard:
SampleWizard
SampleWizard2:
SampleWizard2
TabbedExampleType: Contents: First: FirstOne: FirstThree: FirstTwo: Fourth: Second: SecondOne: SecondThree: SecondThreeOne: SecondThreeThree: SecondThreeTwo: SecondTwo: Third: ThirdOne: ThirdThree: ThirdTwo: Example Table of Contents: Expandable: Example Table of Contents: Selectively Expandable: Example Table of Contents: Simple: Example Table of Contents: Sorted Expandable: Example Table of Contents: Tabbed Internal: Example Table of Contents: Tabbed External: Example for tag Macro: Compose ballad:
TaskManagementExample
Get the Ring:
TaskManagementExample
Go to Mordor:
TaskManagementExample
Kill the Dragon:
TaskManagementExample
Make the beds:
TaskManagementExample
TaskManagementExample:
TiddlyWiki5
done: task:
TaskManagementExample
TiddlyWiki.mp3: Days of the Week: Friday: Monday: Saturday: Sunday: Thursday: Tuesday: Wednesday: sampletag1: sampletag2: Blog Edition:
TiddlyWiki
Editions:
TiddlyWiki
Empty Edition:
TiddlyWiki
Full Edition:
TiddlyWiki
Résumé Builder Edition:
TiddlyWiki
Text-Slicer Edition:
TiddlyWiki
XLSX Utilities Edition:
TiddlyWiki
enlist Operator (Examples): enlist Operator: AutoSave:
$:/config/AutoSave
$:/ControlPanel
SaverModule
TiddlyWiki
DateFormat:
ViewWidget
Features:
Quine
TiddlyWiki
Future Proof:
OpenSource
TiddlyWiki
ImportTiddlers:
GoogleChrome
TiddlyWiki
LazyLoading:
LazyLoadingMechanism
TiddlyWeb
TiddlyWiki
TiddlyWiki in the Sky for TiddlyWeb
TiddlyWiki on Node.js
Modals:
TiddlyWiki
WidgetMessage: tm-modal
Notifications:
TiddlyWiki
SafeMode:
$:/ControlPanel
TiddlyWiki
WikiParserRuleConfiguration
Scalability:
SinglePageApplication
TiddlyWiki
Searching in TiddlyWiki:
$:/AdvancedSearch
Filters
ListField:
Filters
NavigatorWidget
StoryList
Tagging
TiddlerFields
Title List
MultiTiddlerFileSyntax:
MultiTiddlerFiles
MultiTiddlerFiles:
$:/language/ControlPanel/Basics/Caption
$:/language/ControlPanel/Basics/Version
MultiTiddlerFiles
TiddlerFiles:
ContentType
TiddlyWiki
Filter Operators:
all Operator
Filter Parameter
Filter Run
Filter Step
Filter Syntax
Filters
Selection Constructors
Title Selection
Introduction to filter notation:
TextReference
Variables
addprefix Operator: addsuffix Operator: after Operator: all Operator:
Current Tiddler
Dominant Append
Filter Parameter
Hard and Soft Links
ShadowTiddlers
allafter Operator: allbefore Operator: append Operator: backlinks Operator:
Dominant Append
before Operator: bf Operator: butfirst Operator: butlast Operator: commands Operator: count Operator: days Operator: decodehtml Operator: decodeuri Operator: decodeuricomponent Operator: each Operator:
Title List
eachday Operator: editiondescription Operator: editions Operator: encodehtml Operator: encodeuri Operator: encodeuricomponent Operator: escaperegexp Operator: addprefix Operator (Examples): addsuffix Operator (Examples): after Operator (Examples):
Thursday
all Operator (Examples): allafter Operator (Examples): allbefore Operator (Examples): append Operator (Examples): backlinks Operator (Examples): before Operator (Examples):
Thursday
butlast Operator (Examples): commands Operator (Examples): count Operator (Examples): days Operator (Examples): decodehtml Operator (Examples): decodeuri Operator (Examples): decodeuricomponent Operator (Examples): each Operator (Examples):
GroupedLists
eachday Operator (Examples):
GroupedLists
encodehtml Operator (Examples): encodeuri Operator (Examples): encodeuricomponent Operator (Examples): escaperegexp Operator (Examples): field Operator (Examples): fields Operator (Examples): first Operator (Examples): get Operator (Examples): getindex Operator (Examples): has Operator (Examples): indexes Operator (Examples): is Operator (Examples): last Operator (Examples): limit Operator (Examples): links Operator (Examples):
Filter Operators
HelloThere
links Operator
list Operator (Examples): listed Operator (Examples): minlength Operator (Examples): modules Operator (Examples): moduletypes Operator (Examples): move Operator (Examples): next Operator (Examples): nsort Operator (Examples): nsortcs Operator (Examples): nth Operator (Examples): plugintiddlers Operator (Examples): prefix Operator (Examples): prepend Operator (Examples): previous Operator (Examples): putafter Operator (Examples): putbefore Operator (Examples): putfirst Operator (Examples): putlast Operator (Examples): regexp Operator (Examples):
Variables
remove Operator (Examples): removeprefix Operator (Examples): removesuffix Operator (Examples): replace Operator (Examples): rest Operator (Examples): reverse Operator (Examples): sameday Operator (Examples): search Operator (Examples): shadowsource Operator (Examples): sort Operator (Examples): sortby Operator (Examples): sortcs Operator (Examples): splitbefore Operator (Examples): storyviews Operator (Examples): stringify Operator (Examples): suffix Operator (Examples): tag Operator (Examples): tagging Operator (Examples): tags Operator (Examples): title Operator (Examples): untagged Operator (Examples): field Operator:
Filter Operators
Filter Step
fields Operator:
Dominant Append
first Operator: get Operator:
Filter Operators
Title Selection
getindex Operator:
DataTiddlers
Dominant Append
has Operator: haschanged Operator: indexes Operator:
DataTiddlers
Dominant Append
JSONTiddlers
is Operator:
ContentType
Current Tiddler
Filter Expression
Filter Run
Hard and Soft Links
ShadowTiddlers
SystemTiddlers
last Operator: limit Operator: links Operator:
Dominant Append
list Operator:
Current Tiddler
TextReference
listed Operator:
Dominant Append
Title List
minlength Operator: modules Operator: moduletypes Operator: move Operator: next Operator: nsort Operator: nsortcs Operator: nth Operator: order Operator: plugintiddlers Operator: prefix Operator: prepend Operator: previous Operator: putafter Operator: putbefore Operator: putfirst Operator: putlast Operator: regexp Operator:
Filter Run
Variables
remove Operator: removeprefix Operator: removesuffix Operator: replace Operator: rest Operator: reverse Operator: sameday Operator: search Operator: shadowsource Operator:
Dominant Append
sort Operator: sortby Operator: sortcs Operator: splitbefore Operator:
Dominant Append
Table-of-Contents Macros
storyviews Operator:
Modules
stringify Operator: suffix Operator: Filter Expression:
Dominant Append
Filter Run
Filter Syntax
ShadowTiddlers
Filter Parameter:
DataTiddlers
Filter Operators
TextReference
TiddlerFields
Variables
Filter Run:
Filter Expression
Filter Step
Title Selection
Filter Step:
Filter Expression
Filter Operators
Filter Run
Filter Syntax
TiddlerFields
Title Selection
Filter Syntax:
Filter Expression
Filter Run
Filter Step
Title Selection
Filter Whitespace:
Filter Expression
Filter Run
tag Operator:
Order of Tagged Tiddlers
tagging Operator:
Dominant Append
Order of Tagged Tiddlers
tags Operator:
Dominant Append
title Operator:
Selection Constructors
untagged Operator: GettingStarted - Android:
AndTidWiki
TiddlyFox
TiddlyWiki
GettingStarted - Chrome:
TiddlyWiki
GettingStarted - Firefox:
TiddlyFox
TiddlyWiki
GettingStarted - Internet Explorer:
TiddlyWiki
Windows HTA Hack
GettingStarted - Node.js: GettingStarted - Online:
CouchDB
TiddlyWiki
GettingStarted - Safari:
TiddlyWiki
GettingStarted - WebDAV:
TiddlyWiki
Upgrading
WebDAV
GettingStarted - iOS: GettingStarted:
A Gentle Guide to TiddlyWiki
Encryption
Saving on TiddlySpot
TiddlyDesktop
TiddlyWiki
A Gentle Guide to TiddlyWiki:
GettingStarted
TableOfContents
TiddlyWiki
TiddlyWiki on Node.js
TiddlyWiki Video Tutorials by Francis Meetze
Discover TiddlyWiki:
Community
Philosophy of Tiddlers
TableOfContents
HelloThere:
"TiddlyWiki for Scholars" by Alberto Molina
Creating and editing tiddlers
Philosophy of Tiddlers
Sharing your tiddlers with others
Structuring TiddlyWiki
TaskManagementExample
TiddlyWiki
HelloThumbnail: Some of the things you can do with TiddlyWiki:
ImageGallery Example
Motovun Jack.jpg
SampleWizard
TaskManagementExample
Ten reasons to switch to TiddlyWiki: What happened to the original TiddlyWiki?:
TiddlyWiki
TiddlyWiki5
TiddlyWikiClassic
WikiText
HelloThumbnail - Classic: HelloThumbnail - Developers: HelloThumbnail - Gentle Guide: HelloThumbnail - HelpingTiddlyWiki: HelloThumbnail - Introduction Video: HelloThumbnail - Latest Version: HelloThumbnail - TiddlyMap: Hidden Setting: Search Minimum Length:
$:/config/Search/MinLength
Hidden Setting: Search AutoFocus:
$:/config/Search/AutoFocus
TiddlyWiki
Hidden Setting: Typing Refresh Delay:
$:/config/Drafts/TypingTimeout
TiddlyWiki
Hidden Settings:
$:/ControlPanel
TiddlyWiki
Adding Babel Polyfill to TiddlyWiki:
TiddlyWiki
Using ES2016 for Writing Plugins
Adding a Twitter Follow button:
TiddlyWiki
Adding a table of contents to the sidebar:
Table-of-Contents Macros
TableOfContents
Adopt a Titles Policy:
Documentation Style Guide
SystemTiddler
TiddlyWiki
Concatenating text and variables using macro substitution:
MacroCallWidget
Macros
Configuring the default TiddlerInfo tab:
$:/config/TiddlerInfo/Default
Creating SubStories:
HelloThere
Creating a custom export format:
$:/tags/Exporter
Editing Tiddlers with Emacs:
TiddlyWiki
Editing Tiddlers with Vim:
TiddlyWiki
Formatting List Results as Tables with CSS - Specified Columns Methods:
Formatting List Results as Tables (no CSS)
Formatting List Results as Tables with CSS - Variable Column Method
Formatting List Results as Tables with CSS - Variable Column Method:
Formatting List Results as Tables (no CSS)
Formatting List Results as Tables with CSS - Specified Columns Methods
Formatting List Results as Tables (no CSS):
Formatting List Results as Tables with CSS - Specified Columns Methods
Formatting List Results as Tables with CSS - Variable Column Method
nth Operator
Generating Static Sites with TiddlyWiki:
DefaultTiddlers
JavaScript
RenderTiddlerCommand
RenderTiddlersCommand
TiddlyWiki
TiddlyWiki5
How to add a banner for GitHub contributions:
$:/ContributionBanner
GitHub
Improving TiddlyWiki Documentation
TiddlyWiki
WikiFolder
How to apply custom styles by tag:
JavaScript
NightReader
Using Stylesheets
How to build a TiddlyWiki5 from individual tiddlers:
Installing TiddlyWiki on Node.js
TiddlerFiles
TiddlyWiki
TiddlyWiki5
TiddlyWikiFolders
How to change the sort order of sub-branches in a TOC macro:
Table-of-Contents Macros
How to embed PDF and other documents:
ContentType
ExternalImages
node.js
How to export tiddlers:
$:/AdvancedSearch
Filters
How to put the last modification date in a banner:
$:/_MyRibbon
$:/tags/PageControls
$:/tags/PageTemplate
Installing a plugin from the plugin library
How to add a new tab to the sidebar:
$:/core/ui/SideBar/Open
$:/tags/SideBar
SystemTags
Table-of-Contents Macros
TableOfContents
Tagging
How to turn off camel case linking:
$:/ControlPanel
CamelCase
KeyboardShortcuts:
$:/ControlPanel
Making a custom journal button:
$:/core/ui/Buttons/new-journal
Making curved text with SVG:
Making curved text with SVG
Preserving open tiddlers at startup:
$:/DefaultTiddlers
$:/StoryList
TiddlyWiki
Setting a favicon:
$:/favicon.ico
ServerCommand
TiddlyWiki
Setting a page background image:
$:/ControlPanel
DarkPhotos
ExternalImages
Images in WikiText
Sharing a TiddlyWiki on Dropbox:
TiddlyWiki
Structuring TiddlyWiki:
DataTiddlers
Tagging
TiddlerLinks
Tiddlers
TiddlyWiki5
Title List
Tagging:
$:/TagManager
Creating and editing tiddlers
CSS
Filters
InfoPanel
Order of Tagged Tiddlers
Page and tiddler layout customisation
TiddlerFields
Title List
The First Rule of Using TiddlyWiki:
TiddlyFox
TiddlyWiki
Upgrading:
$:/AdvancedSearch
SafeMode
Saving with TiddlyFox
The First Rule of Using TiddlyWiki
TiddlyWiki
TiddlyWiki on Node.js
Upgrading TiddlyWiki on Node.js
Using ES2016 for Writing Plugins:
Adding Babel Polyfill to TiddlyWiki
BrowserCompatibility
JavaScript
ModuleType
PluginMechanism
TiddlyWiki
TiddlyWiki on Node.js
Using SVG:
$:/SVGExampleRadius
HelloThere
Motovun Jack.svg
Tiddler Fishes.svg
TiddlyWiki5
Typed Blocks in WikiText
WikiText
Using Stamp: Using Stylesheets:
$:/core/ui/PageStylesheet
ColourPalettes
RevealWidget
Stylesheet Macros
TiddlyWiki
WikiText
Using TiddlyWiki for GitHub project documentation:
GitHub
LinkWidget
MarkDown
ReadMe
TiddlyWiki5
TiddlyWikiFolders
Using a custom path prefix with the client-server edition:
ServerCommand
TiddlyWiki on Node.js
Windows HTA Hack:
TiddlyWiki
Blurry Lawn.jpg: Dev Thumbnail.jpg: Introduction Video Thumbnail.jpg: Motovun Jack.ascii: Motovun Jack.jpg: Motovun Jack.pdf: Motovun Jack.svg: New Release Banner.png: Newnham Horizon.jpg: PerlinLight.jpg: Pinstripe.gif: TWEUM2016 Thumbnail.jpg: Tiddler Fishes.svg: Tiddler Poster.png: TiddlyMap.png: TiddlyWiki Classic.png: Language Icon: ca-ES: Language Icon: cs-CZ: Language Icon: da-DK: Language Icon: de-AT: Language Icon: de-DE: Language Icon: el-GR: Language Icon: es-ES: Language Icon: fr-FR: Language Icon: hi-IN: Language Icon: ia-IA: Language Icon: it-IT: Language Icon: ja-JP: Language Icon: ko-KR: Language Icon: nl-NL: Language Icon: pa-IN: Language Icon: pt-PT: Language Icon: ru-RU: Language Icon: sk-SK: Language Icon: sv-SE: Language Icon: zh-Hans: Language Icon: zh-Hant: Edición en Castellano: Chinese (Simplified) Edition:
Chinese (Traditional) Edition
TiddlyWiki
Chinese (Traditional) Edition:
Chinese (Simplified) Edition
TiddlyWiki
Édition en Français (France):
TiddlyWiki
Deutsch (Österreich) Edition:
Deutsch (Deutschland) Edition
TiddlyWiki
Deutsch (Deutschland) Edition:
Deutsch (Österreich) Edition
TiddlyWiki
Korean (Korea Republic) Edition: LanguageGallery:
Icon
Language
ListWidget
TranscludeWidget
Languages:
$:/ControlPanel
TiddlyWiki
Translate TiddlyWiki into your language
Copying tiddlers between TiddlyWiki files:
TiddlyWiki
Learning:
Reference
TiddlyWiki
WikiText
changecount Macro:
Current Tiddler
Macros
colour Macro:
$:/palettes/Vanilla
Cascading Style Sheets
ColourPalettes
Macros
contrastcolour Macro:
$:/core/ui/TagTemplate
Cascading Style Sheets
Macros
Core Macros:
Macros
csvtiddlers Macro:
$:/core/templates/exporters/CsvFile
Comma-Separated Values
Filters
Macros
Title Selection
datauri Macro:
Base64
Cascading Style Sheets
Data URI
Macros
dumpvariables Macro:
Macros
Variables
Widgets
jsontiddlers Macro:
$:/core/templates/exporters/JsonFile
Filters
JavaScript Object Notation
Macros
Title Selection
lingo Macro:
Macros
list-links Macro:
Cascading Style Sheets
Filters
Macros
Title Selection
makedatauri Macro:
ContentType
Data URI
Macros
now Macro:
DateFormat
Macros
qualify Macro:
Macros
StateMechanism
Widgets
resolvepath Macro:
Macros
Stylesheet Macros:
$:/core/macros/CSS
Cascading Style Sheets
Macros
Table-of-Contents Macros:
Filter Expression
Filter Step
How to add a new tab to the sidebar
Order of Tagged Tiddlers
SecondThree
StateMechanism
SystemTiddlers
Table-of-Contents Macros (Examples)
Tagging
TemplateTiddlers
tabs Macro:
Cascading Style Sheets
Filters
Macros
StateMechanism
SystemTiddlers
TemplateTiddlers
Title Selection
tag Macro:
Current Tiddler
Macros
timeline Macro:
Date Fields
DateFormat
Filter Expression
Filter Step
Macros
version Macro:
Macros
colour-picker Macro:
Macros
Macro Calls in WikiText (Examples): changecount Macro (Examples):
New Tiddler
colour-picker Macro (Example 1): colour-picker Macro (Examples): colour Macro (Examples): datauri Macro (Examples):
WikiText
dumpvariables Macro (Examples): image-picker Macro (Example 1): image-picker Macro (Example 2): image-picker Macro (Examples): lingo Macro (Examples):
DateFormat
list-links Macro (Examples): makedatauri Macro (Examples): now Macro (Examples): qualify Macro (Examples):
$:/editions/tw5.com/macro-examples/qualify-transcluded
resolvepath Macro (Examples): tabs Macro (Examples): tag Macro (Examples): thumbnail Macro (Examples): timeline Macro (Examples): Table-of-Contents Macros (Examples):
TableOfContents
version Macro (Examples): image-picker Macro:
Filter Expression
Filter Step
Macros
Macro Call Syntax:
Filter Whitespace
Macros
Macro Definition Syntax:
Filter Whitespace
Macros
Macro Syntax: tag-picker Macro:
Macros
tag-pill Macro:
Macros
tag Macro
thumbnail Macro:
Macros
AlertMechanism:
$:/tags/Alert
TiddlyWiki
DraftMechanism:
ListWidget
NavigatorWidget
HistoryMechanism:
$:/config/EmptyStoryMessage
$:/HistoryList
GettingStarted
InfoMechanism:
$:/info/browser
$:/info/node
$:/info/url/full
$:/info/url/host
$:/info/url/hostname
$:/info/url/origin
$:/info/url/pathname
$:/info/url/port
$:/info/url/protocol
$:/info/url/search
Node.js
WikiText
Mechanisms:
TiddlyWiki
PluginMechanism:
Installing a plugin from the plugin library
JavaScript
Modules
PluginFolders
Plugins
ShadowTiddlers
ThemeMechanism
TiddlyWiki
TiddlyWiki on Node.js
TiddlyWiki5
PopupMechanism:
ButtonWidget
RevealWidget
StateMechanism
SavingMechanism:
$:/config/SaverFilter
$:/core/save/all
$:/plugins/tiddlywiki/tiddlyweb
$:/plugins/tiddlywiki/tiddlyweb/save/offline
ButtonWidget
SavingMechanism
TiddlyWiki
WidgetMessage: tm-save-wiki
StateMechanism:
$:/core/ui/PageTemplate
$:/InfoPanelState
$:/StoryList
DraftMechanism
NavigationMechanism
StateMechanism
StateTiddler
TiddlyWiki
WikiText
TranslationMechanism:
$:/language
$:/language/Docs/ModuleTypes/isfilteroperator
$:/language/EditTemplate/Fields/Add/Value/Placeholder
$:/language/EditTemplate/Shadow/OverriddenWarning
TiddlyWiki
UpgradeMechanism: SampleModal: WidgetMessage: tm-add-field:
ButtonWidget
FieldManglerWidget
WidgetMessage: tm-add-tag:
ButtonWidget
FieldManglerWidget
WidgetMessage: tm-auto-save-wiki:
SaverModules
SyncMechanism
TiddlyWiki
WidgetMessage: tm-delete-tiddler
WidgetMessage: tm-perform-import
WidgetMessage: tm-save-tiddler
WidgetMessage: tm-browser-refresh:
ButtonWidget
WidgetMessage: tm-cancel-tiddler:
ButtonWidget
NavigatorWidget
WidgetMessage: tm-clear-password:
$:/isEncrypted
ButtonWidget
EncryptionMechanism
WidgetMessage: tm-close-all-tiddlers:
ButtonWidget
NavigatorWidget
WidgetMessage: tm-close-other-tiddlers:
ButtonWidget
NavigatorWidget
WidgetMessage: tm-close-tiddler:
ButtonWidget
NavigatorWidget
WidgetMessage: tm-delete-tiddler:
ButtonWidget
NavigatorWidget
WidgetMessage: tm-download-file:
ButtonWidget
SaverModules
SyncMechanism
TiddlyWiki
WidgetMessage: tm-edit-bitmap-operation:
$:/core/ui/EditorToolbar/size-dropdown
ActionWidget
ButtonWidget
WidgetMessage: tm-edit-text-operation:
$:/core/ui/EditorToolbar/bold
ActionWidget
ButtonWidget
WidgetMessage: tm-edit-tiddler:
ActionSendMessageWidget
ButtonWidget
NavigatorWidget
WidgetMessage: tm-fold-all-tiddlers:
ButtonWidget
NavigatorWidget
WidgetMessage: tm-fold-other-tiddlers:
ButtonWidget
NavigatorWidget
WidgetMessage: tm-fold-tiddler:
ButtonWidget
NavigatorWidget
WidgetMessage: tm-full-screen:
TiddlyWiki
WidgetMessage: tm-home:
$:/DefaultTiddlers
ButtonWidget
PermaLinks
WidgetMessage: tm-import-tiddlers:
$:/Import
BrowseWidget
DropzoneWidget
NavigatorWidget
UpgradeMechanism
WidgetMessage: tm-load-plugin-from-library:
ButtonWidget
CodeMirror
WidgetMessage: tm-load-plugin-library:
ButtonWidget
WidgetMessage: tm-login:
$:/status/IsLoggedIn
$:/status/UserName
SyncAdaptorModules
SyncMechanism
TiddlyWiki
WidgetMessage: tm-logout:
$:/status/IsLoggedIn
$:/status/UserName
SyncAdaptorModules
SyncMechanism
TiddlyWiki
WidgetMessage: tm-modal:
ButtonWidget
TiddlyWiki
WidgetMessage: tm-navigate:
ActionNavigateWidget
ButtonWidget
LinkWidget
NavigatorWidget
WidgetMessage: tm-new-tiddler:
ActionSendMessageWidget
ButtonWidget
NavigatorWidget
TaskTemplate
WidgetMessage: tm-notify:
TiddlyWiki
WidgetMessage: tm-open-window:
ButtonWidget
WidgetMessage: tm-perform-import:
$:/Import
ButtonWidget
NavigatorWidget
UpgradeMechanism
WidgetMessage: tm-permalink:
ButtonWidget
PermaLinks
WidgetMessage: tm-permaview:
ButtonWidget
PermaLinks
WidgetMessage: tm-print:
ButtonWidget
WidgetMessage: tm-remove-field:
ButtonWidget
FieldManglerWidget
WidgetMessage: tm-remove-tag:
ButtonWidget
FieldManglerWidget
WidgetMessage: tm-save-tiddler:
ButtonWidget
NavigatorWidget
WidgetMessage: tm-save-wiki:
ButtonWidget
SaverModules
SyncMechanism
TiddlyWiki
WidgetMessage: tm-scroll:
ScrollableWidget
WidgetMessage: tm-server-refresh:
SyncAdaptorModules
SyncMechanism
TiddlyWiki
WidgetMessage: tm-set-password:
$:/isEncrypted
ButtonWidget
EncryptionMechanism
WidgetMessage: tm-unfold-all-tiddlers:
ButtonWidget
NavigatorWidget
Building TiddlyWikiClassic:
FieldsWidget
JavaScript
TiddlyWiki
TiddlyWiki on Node.js
TiddlyWiki5
TiddlyWikiClassic
ViewWidget
Customising Tiddler File Naming:
$:/config/FileSystemPaths
Filter Syntax
task
TiddlyWiki on Node.js
TiddlyWikiFolders
Environment Variables on Node.js:
GitHub
InitCommand
TiddlyWiki on Node.js
TiddlyWiki5
Installing TiddlyWiki Prerelease on Node.js:
GitHub
npm
TiddlyWiki5
Installing TiddlyWiki on Node.js:
Node.js
TiddlyWiki
Naming of System Tiddlers:
JavaScript
TiddlyWiki
Scripts for TiddlyWiki on Node.js:
LazyLoading
Scripts for building tiddlywiki.com
TiddlyWiki
TiddlyWiki5
Serving TW5 from Android:
Installing TiddlyWiki on Node.js
TiddlyWiki on Node.js
Using TiddlyWiki on Node.js
TiddlyWiki on Node.js:
Installing TiddlyWiki on Node.js
Node.js
TiddlyWiki
Upgrading TiddlyWiki on Node.js
Using TiddlyWiki on Node.js
TiddlyWiki5 Versioning:
TiddlyWiki
TiddlyWiki5
Upgrading TiddlyWiki on Node.js:
TiddlyWiki on Node.js
Using TiddlyWiki on Node.js:
TiddlerFiles
TiddlyWiki
TiddlyWiki5
TiddlyWikiFiles
TiddlyWikiFolders
Working with the TiddlyWiki5 repository:
Contributing
GitHub
Installing TiddlyWiki on Node.js
npm
Scripts for TiddlyWiki on Node.js
TiddlyWiki
TiddlyWiki5
Working with the TiddlyWiki5 repository video
tiddlywiki.files Files:
LazyLoading
Release 5.1.14
TiddlerFiles
TiddlyWikiFolders
tiddlywiki.info Files:
$:/config/OriginalTiddlerPaths
BuildCommand
TiddlyWikiFolders
Beaker Browser:
TiddlyWiki
TiddlyWiki on Beaker Browser
Platforms:
TiddlyWiki
TiddlyWiki in the Sky for TiddlyWeb:
TiddlySpace
TiddlyWeb
TiddlyWiki
TiddlyWiki on Beaker Browser:
Beaker Browser
TiddlyWiki
CodeMirror Plugin:
CodeMirror
TiddlyWiki
D3 Plugin:
TiddlyWiki
Disabling Plugins: Highlight Plugin: Installing a plugin from the plugin library:
$:/ControlPanel
The First Rule of Using TiddlyWiki
TiddlyWiki
KaTeX Plugin: Manually installing a plugin:
$:/plugins/tiddlywiki/example
The First Rule of Using TiddlyWiki
TiddlyWiki
Markdown Plugin: OfficialPlugins:
Installing a plugin from the plugin library
TiddlyWiki
UpgradeMechanism
Working with the TiddlyWiki5 repository
Plugin Editions:
TiddlyWiki
PluginFolders: Plugin Fields: Plugin Information Tiddlers:
$:/ControlPanel
$:/core/en-GB/readme
$:/core/icon
$:/core/readme
TiddlyWiki
TranscludeWidget
Plugins:
Installing a plugin from the plugin library
JavaScript
PluginMechanism
Resources
ShadowTiddlers
TiddlyWiki
TiddlyWiki5
Railroad Plugin: SaveTrailPlugin:
TiddlyWiki
TW2Parser Plugin:
TiddlyWiki
WikiText
TwitterPlugin: Uninstalling a plugin:
$:/ControlPanel
The First Rule of Using TiddlyWiki
TiddlyWiki
ContributingTemplate:
TiddlyWiki5
ReadMe:
JavaScript
TiddlyWiki
WikiText
ReadMeBinFolder: TiddlyWiki2ReadMe:
TiddlyWikiClassic
Reference:
TiddlyWiki
BetaReleases:
TiddlyWiki5
TiddlyWiki5 Versioning
Release 5.1.0:
TiddlyWiki
Release 5.1.1:
ButtonWidget
KaTeX Plugin
Release 5.0.17-beta
TiddlyWiki
Release 5.1.10:
$:/AdvancedSearch
$:/ControlPanel
ActionListopsWidget
ActionSetFieldWidget
ActionWidgets
Alice in Wonderland
Blog Edition
days Operator
EditTextWidget
FieldManglerWidget
GitHub
Hidden Setting: Keyboard Shortcuts
Highlight Plugin
How to apply custom styles by tag
JavaScript
KaTeX
KeyboardWidget
LazyLoading
RenderTiddlerCommand
Résumé Builder Edition
SaveTiddlersCommand
SelectWidget
ServerCommand
tabs Macro
Text-Slicer Edition
TiddlerLinks
TiddlyWiki
TiddlyWikiFolders
WikiText
Release 5.1.11:
Release 5.1.10
Release 5.1.12:
$:/AdvancedSearch
ActionWidgets
CodeMirror
colour-picker Macro
Customising Tiddler File Naming
days Operator
EditShortcutWidget
EntityWidget
has Operator
image-picker Macro
KaTeX
LinkCatcherWidget
ScrollableWidget
SelectWidget
Table-of-Contents Macros
TiddlyWiki
Upgrading
ViewWidget
WebDav
WikifyWidget
WikiText
Release 5.1.13:
KaTeX Plugin
TiddlyWiki
Release 5.1.2:
KaTeX Plugin
TiddlySpot
TiddlyWiki
Release 5.1.3:
ActionWidgets
Audio
Creating and editing tiddlers
Creating journal tiddlers
ImageWidget
LaTeX
TiddlyWiki
Release 5.1.4:
Release 5.1.3
TiddlyWiki
ViewWidget
Release 5.1.5:
$:/AdvancedSearch
$:/ControlPanel
$:/core/images/video
$:/TagManager
ActionDeleteFieldWidget
ActionDeleteTiddlerWidget
ActionSetFieldWidget
CodeMirror
Customising search results
EditionsCommand
EditTextWidget
Example Table of Contents: Tabbed Internal
ImageGallery Example
RevealWidget
Table-of-Contents Macros
TiddlyWiki
TiddlyWikiFolders
UnpackPluginCommand
WidgetMessage: tm-download-file
WidgetMessage: tm-modal
WidgetMessage: tm-new-tiddler
WidgetMessage: tm-save-wiki
Release 5.1.6:
BrowseWidget
InitCommand
Table-of-Contents Macros
TiddlyWiki
Release 5.1.7:
GettingStarted
Release 5.1.6
Release 5.1.8:
$:/AdvancedSearch
$:/ControlPanel
$:/TagManager
CheckboxWidget
eachday Operator
editiondescription Operator
editions Operator
Filter Syntax
Help Plugin
Highlight Plugin
ImageGallery Example
KaTeX Plugin
Railroad Plugin
RenderTiddlersCommand
resolvepath Macro
RevealWidget
sameday Operator
Setting a page background image
TiddlyWiki
Release 5.1.9:
$:/ControlPanel
ActionSendMessageWidget
ButtonWidget
CodeMirror
Hidden Setting: Search AutoFocus
Hidden Setting: Typing Refresh Delay
Hidden Settings
Releases
TiddlyDesktop
TiddlyWiki
tv-tiddler-preview Variable
VarsWidget
ReleaseTemplate: Releases: TiddlyWiki Releases:
AlphaReleases
BetaReleases
TiddlyWiki5
TiddlyWiki5 Versioning
AlphaReleases:
TiddlyWiki5
TiddlyWiki5 Versioning
Release 5.0.0-alpha.11:
BrowseWidget
DropzoneWidget
EditBitmapWidget
EditTextWidget
EditWidget
ListWidget
NavigatorWidget
SetVariableWidget
TiddlyWiki5
TranscludeWidget
ViewWidget
Release 5.0.0-alpha.12:
TiddlyWeb
TiddlyWiki5
Release 5.0.0-alpha.13:
$:/tags/ControlPanel
$:/tags/MoreSideBar
$:/tags/SideBar
$:/tags/TiddlerInfo
CodeMirror
DaveGifford
ViewWidget
Release 5.0.0-alpha.14:
$:/ControlPanel
CheckboxWidget
PasswordWidget
Release 5.0.0-alpha.15:
$:/tags/EditTemplate
$:/tags/EditToolbar
$:/tags/PageControls
$:/tags/ViewToolbar
TiddlyWeb
TranscludeWidget
Release 5.0.0-alpha.16:
$:/LeftSideBar
$:/TopSideBar
Node.js
SavingMechanism
ServerCommand
TiddlySpot
TiddlyWiki5
TiddlyWikiFolders
WikiText
Release 5.0.0-alpha.17: Release 5.0.1-alpha:
Block Quotes in WikiText
GitHub
StephanHradek
TiddlyWiki5 Versioning
Upgrading
Changes to filters in 5.0.9-beta: Notes for upgrading to 5.0.11-beta:
OutputCommand
TiddlyWikiFolder
Notes for upgrading to 5.0.8-beta:
$:/SiteSubtitle
$:/SiteTitle
InitCommand
SiteSubtitle
SiteTitle
TiddlyWiki
TiddlyWiki on Node.js
Release 5.0.10-beta:
DateFormat
Images in WikiText
ImageWidget
SafeMode
TiddlyWeb
Release 5.0.11-beta:
$:/AdvancedSearch
$:/core/ui/PageMacros
$:/core/wiki/title
BuildCommand
ClearPasswordCommand
CodeBlockWidget
CodeMirror
JavaScript
Linking in WikiText
Notes for upgrading to 5.0.11-beta
OutputCommand
PermaLinks
StartupMechanism
The First Rule of Using TiddlyWiki
TiddlerFiles
TiddlyWiki
TiddlyWikiFolders
WikiLinks
WikiText
Release 5.0.12-beta: Release 5.0.13-beta:
$:/ControlPanel
$:/tags/RawMarkup
CodeMirror
Environment Variables on Node.js
ExternalImages
HTML in WikiText
ImportVariablesWidget
LinkWidget
Macros in WikiText
PermaLinks
SaveTiddlersCommand
SelectWidget
ServerCommand
SetFieldCommand
TableOfContents
TextWidget
TiddlyWiki
Widgets in WikiText
Release 5.0.14-beta:
$:/ControlPanel
$:/core/modules/upgraders/plugins.js
$:/core/modules/upgraders/system.js
$:/core/modules/upgraders/themetweaks.js
$:/HistoryList
$:/StoryList
$:/TagManager
BuildCommand
CamelCase
CheckboxWidget
Filter Parameter
ImportMechanism
InfoMechanism
ReleaseHistory
SystemTags
TiddlerWidget
TiddlyWiki
TranscludeWidget
UpgradeLibrary
UpgradePlugin
UpgraderModules
WidgetMessage: tw-permalink
WidgetMessage: tw-permaview
Release 5.0.15-beta:
$:/ControlPanel
$:/TagManager
DropzoneWidget
ImageWidget
PluginMechanism
Startup Modules.svg
Table-of-Contents Macros
TiddlyWiki
WidgetMessage: tw-browser-refresh
WidgetMessage: tw-home
Release 5.0.16-beta:
Configuring the default TiddlerInfo tab
Table-of-Contents Macros
TiddlyWiki
TiddlyWikiClassic
WidgetMessage: tw-browser-refresh
Release 5.0.17-beta:
$:/ControlPanel
BrowseWidget
ButtonWidget
ImageWidget
LinkWidget
RegExp
SafeMode
Table-of-Contents Macros
TiddlyWiki
Release 5.0.18-beta:
RadioWidget
TiddlyWiki
Release 5.0.2-beta:
DavidJade
GitHub
Hard Linebreaks in WikiText
InternetExplorer
JavaScript Macros
PluginMechanism
RadioWidget
Saving on InternetExplorer
Saving with TiddlyIE
StephanHradek
TiddlyFox
TiddlyWeb
Release 5.0.3-beta: Release 5.0.4-beta:
DavidJade
GitHub
InternetExplorer
RadioWidget
SaveTiddlerCommand
StephanHradek
TiddlyWiki on Node.js
TiddlyWikiFolders
Using favicons
Release 5.0.5-beta:
Setting a favicon
Release 5.0.6-beta:
$:/AdvancedSearch
DavidJade
Formatting in WikiText
InternetExplorer
ServerCommand
StephanHradek
Tables in WikiText
TiddlerFilters
TiddlyWiki on node-webkit
Release 5.0.7-beta:
$:/AdvancedSearch
$:/ControlPanel
$:/DefaultTiddlers
$:/plugins/tiddlywiki/nodewebkitsaver
GitHub
Naming of System Tiddlers
node-webkit
Saving on a PHP Server
ServerCommand
TemplateTiddlers
TextReference
TextWidget
TiddlerFilters
TiddlyDesktop
TiddlyFox
TiddlyWiki
TiddlyWiki Coding Style Guidelines
TiddlyWiki on Firefox for Android Video
ViewWidget
Release 5.0.8-beta:
$:/AdvancedSearch
$:/ControlPanel
$:/SiteSubtitle
$:/SiteTitle
$:/TagManager
AlertMechanism
AutoSave
BramChen
ButtonWidget
ColourPalettes
EditBitmapWidget
HelpCommand
How to create plugins in the browser
InitCommand
KeyboardWidget
LazyLoading
MultiTiddlerFiles
Notes for upgrading to 5.0.8-beta
RevealWidget
SiteSubtitle
SiteTitle
TiddlerFilter Formal Grammar
TiddlerFilters
TiddlyWeb
TiddlyWiki on Node.js
TranscludeWidget
TranslationMechanism
ViewWidget
WidgetMessages
Release 5.0.9-beta:
$:/AdvancedSearch
$:/ControlPanel
$:/TagManager
ButtonWidget
CecilyView
Changes to filters in 5.0.9-beta
Community
Developing plugins using Node.js and GitHub
LinkWidget
Making curved text with SVG
ScrollableWidget
TiddlerFilters
TiddlerTags
TiddlyWeb
TiddlyWiki
TiddlyWiki Architecture
TiddlyWikiClassic
Transclusion in WikiText
WidgetMessage: tw-home
RoadMap:
GitHub
TiddlyWiki
Encryption:
ServerCommand
Stanford JavaScript Crypto Library
TiddlySpot
TiddlyWiki
TiddlyWiki on Node.js
TiddlyWiki5
Saving on Android:
AndTidWiki
Download
TiddlyWiki
TiddlyWiki5
TiddlyWikiClassic
Saving on InternetExplorer:
InternetExplorer
Saving with TiddlyIE
TiddlyWiki
Windows HTA Hack
Saving on Safari:
Download
TiddlyWiki
Saving on TiddlySpot:
Saving with TiddlyFox
TiddlySpot
TiddlyWiki
TiddlyWiki5
Upgrading
Saving on a PHP Server:
TiddlyWiki
Saving on iPad/iPhone:
TiddlyWiki
TiddlyWiki5
Saving with TiddlyFox on Android:
Download
Firefox for Android
TiddlyFox
TiddlyWiki
TiddlyWiki on Firefox for Android Video
Saving with TiddlyFox:
Download
Firefox
Firefox for Android
Saving with TiddlyFox on Android
TiddlyFox
TiddlyWiki
Saving with TiddlyIE:
Download
TiddlyIE
TiddlyWiki
Saving with the HTML5 fallback saver:
Download
TiddlyWiki
Saving:
TiddlyWiki
Documentation Macros:
WikiText
Documentation Style Guide:
Documentation Macros
Instruction Tiddlers
Reference Tiddlers
Spelling
Technical Prose Style
Tiddler Structure
Tiddler Title Policy
Typography
Instruction Tiddlers:
Reference Tiddlers
Reference Tiddlers: Spelling:
JavaScript
Technical Prose Style:
Instruction Tiddlers
Tiddler Structure:
Philosophy of Tiddlers
Reference Tiddlers
Tiddler Title Policy:
CamelCase
Instruction Tiddlers
Reference Tiddlers
Typography:
Documentation Macros
WikiText
TiddlyDesktop Release 0.0.1: TiddlyDesktop Release 0.0.2:
JavaScript
TiddlyDesktop
TiddlyFox
TiddlyWiki
TiddlyWiki5
TiddlyDesktop Release 0.0.3:
TiddlyDesktop
TiddlyDesktop Release 0.0.4:
GitHub
TiddlyDesktop
TiddlyWiki
TiddlyDesktop Release 0.0.5:
GitHub
TiddlyWiki
TiddlyDesktop Release 0.0.6:
GitHub
TiddlyDesktop
TiddlyWiki
TiddlyDesktop Release 0.0.7:
GitHub
TiddlyDesktop
TiddlyWiki
TiddlyDesktop Release 0.0.8:
GitHub
TiddlyWiki
TiddlyDesktop Releases:
TiddlyDesktop
Core Variables:
Variables
Variables:
Core Variables
Macros
Variables in WikiText
Widgets
WikiText
currentTiddler Variable:
Current Tiddler
TemplateTiddlers
Variables
WikiText
storyTiddler Variable:
$:/core/ui/EditTemplate
$:/core/ui/PageTemplate/story
$:/core/ui/ViewTemplate
Variables
Widgets
transclusion Variable:
Current Tiddler
Transclusion
Variables
Widgets
currentTiddler Variable (Examples): storyTiddler Variable (Examples): transclusion Variable (Examples): tv-config-toolbar-class Variable (Examples):
Cascading Style Sheets
tv-config-toolbar-icons Variable (Examples): tv-config-toolbar-text Variable (Examples): tv-get-export-image-link Variable (Examples): tv-wikilink-tooltip Variable (Examples):
HelloThere
tv-wikilinks Variable (Examples): namespace Variable:
Document Object Model
HyperText Markup Language
Variables
tv-auto-open-on-import Variable:
$:/Import
Variables
tv-config-toolbar-class Variable:
Cascading Style Sheets
Variables
tv-config-toolbar-icons Variable:
Variables
tv-config-toolbar-text Variable:
Variables
tv-get-export-image-link Variable:
Images in WikiText
Macros
TiddlyWiki on Node.js
Variables
tv-get-export-link Variable:
Macros
Variables
tv-get-export-path Variable:
Percent Encoding
TiddlyWiki on Node.js
Variables
tv-tiddler-preview Variable:
Variables
tv-wikilink-template Variable:
Macros
Percent Encoding
Variables
tv-wikilink-tooltip Variable:
Macros
Variables
WikiText
tv-wikilinks Variable:
Variables
Getting Started Video:
TiddlyWiki
Introducing TiddlyDesktop Video:
TiddlyDesktop
Introduction Video:
TiddlyWiki
TiddlyWiki on Firefox for Android Video:
TiddlyWiki
Videos:
Contributing
TiddlyWiki
Working with the TiddlyWiki5 repository video:
Working with the TiddlyWiki5 repository
ActionCreateTiddlerWidget:
ActionWidgets
ButtonWidget
StoryRiver
WidgetMessage: tm-new-tiddler
ActionCreateTiddlerWidget Example: ActionDeleteFieldWidget:
ActionWidgets
ButtonWidget
Current Tiddler
HelloThere
ActionDeleteTiddlerWidget:
ActionWidgets
ButtonWidget
HelloThere
TableOfContents
WidgetMessage: tm-delete-tiddler
ActionListopsWidget:
ActionWidgets
ButtonWidget
Current Tiddler
DataTiddlers
The Extended Listops Filters
ActionNavigateWidget:
ActionWidgets
ButtonWidget
Current Tiddler
WidgetMessage: tm-navigate
ActionSendMessageWidget:
ActionWidgets
ButtonWidget
Messages
WidgetMessage: tm-new-tiddler
ActionSetFieldWidget:
ActionWidgets
ButtonWidget
Current Tiddler
DataTiddlers
HelloThere
ActionWidgets:
ButtonWidget
BrowseWidget:
JavaScript
NavigatorWidget
TiddlyWiki
WidgetMessage: tm-import-tiddlers
ButtonWidget:
Accessibility
ActionWidgets
Messages
PopupMechanism
TextReference
TiddlerA
TiddlerB
Transclusion in WikiText
CheckboxWidget:
ActionSendMessageWidget
ActionSetFieldWidget
ActionWidgets
Current Tiddler
DataTiddlers
ExampleData
FieldManglerWidget
SetWidget
CodeBlockWidget:
Highlight Plugin
CountWidget:
Filters
DropzoneWidget:
LinkWidget
NavigatorWidget
WidgetMessage: tm-import-tiddlers
EditBitmapWidget:
$:/config/BitmapEditor/Colour
$:/config/BitmapEditor/LineWidth
Current Tiddler
EditTextWidget:
AppSettings
ChangeAppSettings
Current Tiddler
EdiTextWidget
EditTextWidget
GettingStarted
ShadowTiddlers
TemplateTiddlers
EditWidget:
Current Tiddler
EditBitmapWidget
EditTextWidget
EncryptWidget:
BootMechanism
EncryptionMechanism
PasswordVault
TiddlyWiki5
EntityWidget: FieldMangler Widget (Examples): FieldManglerWidget:
Current Tiddler
Messages
FieldsWidget:
Current Tiddler
FileSavingMechanism
TiddlyWiki
TiddlyWiki5
ImageWidget:
ExternalImages
ImportVariablesWidget:
$:/core/ui/PageTemplate
Filters
ImportVariablesWidget
KeyboardWidget:
ActionWidgets
Messages
LinkCatcherWidget:
Messages
WidgetMessage: tm-navigate
LinkWidget:
Accessibility
Current Tiddler
HelloThere
WikiText
ListWidget:
DraftMechanism
Filters
GroupedLists
HistoryMechanism
ListWidget
TiddlyWiki5
Variables
ListopsData: MacroCallWidget:
$:/snippets/allfields
$:/snippets/modules
$:/themes/tiddlywiki/starlight/styles.tid
ContentType
NavigatorWidget:
Messages
PasswordWidget:
PasswordVault
TiddlyWiki5
RadioWidget:
AnimalColours
Current Tiddler
DataTiddlers
RevealWidget:
PopupMechanism
RevealWidget
StateTiddlers
TextReference
ScrollableWidget:
$:/_tw5.com-styles
WidgetMessage: tm-scroll
SelectWidget:
$:/SiteTitle
ActionWidgets
DataTiddlers
ListWidget
TableOfContents
SetVariableWidget:
SetWidget
SetWidget:
Variables
TextWidget: The Extended Listops Filters:
DaysOfTheWeek
TiddlerWidget:
$:/core/ui/ViewTemplate
$:/tags/Macro
Current Tiddler
How to apply custom styles by tag
TiddlerWidget
TranscludeWidget:
$:/DefaultTiddlers
DataTiddlers
Plugins
SubTiddler
TiddlyWiki
TranscludeWidget
VarsWidget:
SetWidget
ViewWidget:
$:/DefaultTiddlers
Current Tiddler
DateFormat
JavaScript
Plugins
SubTiddler
Widgets:
HTML in WikiText
Widgets in WikiText
WikiText
WikifyWidget:
ContentType
Variables
Block Quotes in WikiText:
Lists in WikiText
TiddlyWiki5
Code Blocks in WikiText: Dashes in WikiText: Definitions in WikiText: Formatting in WikiText:
Code Blocks in WikiText
HTML in WikiText:
Filter Expression
Macro Calls in WikiText
Macros in WikiText
TextReference
Widgets in WikiText
WikiText
HTML Links in WikiText:
MyLinkDestination
TiddlyWiki
Hard Linebreaks in WikiText:
Paragraphs in WikiText
Headings in WikiText: Horizontal Rules in WikiText: Images in WikiText:
ImageWidget
WikiText
Linking in WikiText:
CamelCase
LinkWidget
WikiText
Lists in WikiText:
Block Quotes in WikiText
Macro Calls in WikiText:
Macro Call Syntax
Macro Calls in WikiText (Examples)
Macros
Transclusion
Variables
Macro Definitions in WikiText:
Macro Definition Syntax
Macros
Pragma
Title Selection
Variables
Macros in WikiText:
Macro Calls in WikiText
Macro Definitions in WikiText
Macros
WikiText
Paragraphs in WikiText:
Hard Linebreaks in WikiText
TiddlyWiki
Styles and Classes in WikiText: Tables in WikiText:
TiddlyWiki5
Transclusion Basic Usage:
TextReference
TiddlerA
TiddlerB
TiddlerFields
TiddlyWiki
Transclusion
Transclusion in WikiText
Transclusion with Templates
Transclusion and Substitution:
HTML in WikiText
Introduction to Filters
Macros in WikiText
Transclusion in WikiText
WikiText
Transclusion in WikiText:
Current Tiddler
DataTiddlers
Filters
TemplateTiddlers
TextReference
TiddlerWidget
TranscludeWidget
Transclusion
Transclusion and Substitution
Transclusion Basic Usage
Transclusion with Templates
WikiText
Transclusion with Templates:
Current Tiddler
Styles and Classes in WikiText
TemplateTiddlers
TextReference
TranscludeWidget
Transclusion Basic Usage
Transclusion in WikiText
Typed Blocks in WikiText:
ContentType
WikiText
Variables in WikiText:
Filter Operators
Filter Parameter
ImportVariablesWidget
Macro Calls in WikiText
Macro Definitions in WikiText
Macros
Macros in WikiText
Variables
Widgets in WikiText
Widgets in WikiText:
HTML in WikiText
WikiText
Audio:
Caruso - Ave Maria
Images in WikiText
TiddlyWiki
TiddlyWiki.mp3
BrowserCompatibility:
TiddlyWiki
Creating and editing tiddlers:
AutoSave
blue italics
ContentType
Creating journal tiddlers
ListField
WikiText
Creating journal tiddlers:
$:/ControlPanel
DateFormat
InfoPanel
Making a custom journal button
Formatting text in TiddlyWiki:
CamelCase
HelloThere
History of TiddlyWiki
TiddlyWiki
WikiText
Navigating between open tiddlers: Performance:
ExternalImages
TiddlyWiki
Sharing your tiddlers with others:
How to export tiddlers
ImportTiddlers
PermaLinks
PermaView
Sharing a TiddlyWiki on Dropbox
Using links to navigate between tiddlers:
Filters
InfoPanel
Linking in WikiText
ListField
ListWidget
ShadowTiddlers
SystemTiddlers
Transclusion in WikiText
Working with TiddlyWiki:
TiddlyWiki
When used with a suffix, the If the suffix is omitted, a tiddler is deemed to match if all the search terms appear in the combination of its The search ignores the difference between capital and lowercase letters. Searching is fast and flexible in TiddlyWiki. Typing text into the search box in the sidebar will turn up a list of all the tiddlers that contain that text. Clicking on the magnifying glass icon to the right of the search box will open $:/AdvancedSearch. This tiddler contains four tabs: This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. A simple technique for adding tag-based cross references to the default view template. See also: - is a feature to generate a "See also:" section after the tiddler text, somewhat like in Wikipedia articles.
The output of a filter step depends on its operator: A good example of a constructor is The select widget displays a popup menu based on a HTML select element. The popup (or dropdown) contains a list of items defined by In multiple selection mode, the list of selected values is bound to the specified tiddler field or index. Browsers generally use the ctrl or cmd keys for multiple selection. For example, this select widget displays a list of the tags in this wiki: That renders as:
The state tiddler currently contains: See the text change as you switch entries in the select widget. Try changing the value of the state tiddler and see the select widget change. Notice how the select widget only displays an entry if there is a precise match with the tiddler text. The content of the This example sets the title of the current wiki $:/SiteTitle to one of a list of book titles: That renders as:
In this example the That renders as:
Entries in the list can be grouped together with the That renders as:
The ListWidget can be used to generate the options for a select widget. For example, here we combine a select widget listing all the tiddlers tagged TableOfContents with a transclusion to display the text of the selected one. That renders as:
This example uses a nested pair of list widgets. The outer one generates the That renders as:
This example uses the That renders as: 티들리위키5에 내장된 서버는 매우 간단합니다. 티들리웹과는 호환할 수 있지만 안정적으로 인터넷에 연결하여 사용하는 데 필요한 많은 기능을 지원하지 않습니다. 루트에서, 지정한 티들러를 렌더하여 제공합니다. 루트 이외에는, JSON으로 인코딩된 개별 티들러를 제공하고, 매개변수는 다음과 같습니다: 비밀번호 매개변수가 지정되어 있다면 브라우저는 사용자에게 사용자이름과 비밀번호를 프롬프트할 것입니다. 비밀번호는 일반 텍스트로 전송되므로 일반적으로 사용하기에 적합하지 않음을 참고하세요. 예를 들어: 호스트이름 또는 경로접두어를 설정해야 하고 비밀번호가 필요하지 않는다면 사용자이름과 비밀번호는 빈 문자열로 지정할 수 있습니다: 동시에 여러 티들리위키 서버를 실행하려면 각각 다른 포트를 할당해야 합니다.
Termux is an open source Android application that combines a Linux system and a terminal. Once you open Termux on your Android system, it is straightforward to install and run the Node.js flavour of TiddlyWiki from the command line. From then on, as long as Termux is not closed, you may access your wiki anytime from your favourite Web browser pointing on the expected address and port. note to contributors: in Termux, you may as well install git, emacs or vi, in order to edit and maintain individual tiddler files. This would probably require that you also attach a more powerful keyboard to your Android, like the Hacker's Keyboard application or a Bluetooth external device. 이 명령은 실험 기능으로 향후 바뀔 수 있음을 참고하세요 티들러로의 매개변수는 다음과 같습니다: "favicons" are small icons that most browsers display to help users identify websites. When TiddlyWiki starts up in the browser it looks for a tiddler called $:/favicon.ico and dynamically uses it as the favicon for the page. If you modify the image then the favicon changes instantly to reflect it. On the server, the ServerCommand will serve the tiddler $:/favicon.ico at the path Note that the palette DarkPhotos is provided to make the sidebar more readable on dark background images. The set variable widget assigns a value to a specified variable. The new value of the variable is available to the content within the set variable widget. The content of the The simplest way of using set variable widget assigns a string to a variable. The following example assigns a literal string Both the name and value attributes can be transcluded. For example: This form of the set variable widget chooses one of two specified values according to whether a filter evaluates to an empty list. Here's an example that sets a variable according to whether the current tiddler is called "myMagicTitle": This form of the set variable widget evaluates the filter and assigns the result to the variable as a space-separated list (using double square brackets for titles containing spaces). New in 5.1.14 This form of the set variable widget evaluates the filter and assigns the specified result to the variable as a single item (ie, not using double square brackets for titles containing spaces). Each input title is processed in turn. If it denotes a shadow tiddler, the title of its plugin tiddler is dominantly appended to the output. Non-shadow tiddlers contribute nothing to the output. ShadowTiddlers are tiddlers that are loaded from within Plugins. Unlike ordinary tiddlers, they don't appear in most lists. ShadowTiddlers can be overridden with an ordinary tiddler of the same name. If that tiddler is subsequently deleted then the original shadow tiddler is automatically restored. The current shadow tiddlers are: You can work on a TiddlyWiki file in Dropbox and publish a URL that anyone can use to see a read-only view of the file. The result is a "secret" URL that you can send to other people to enable them to see the wiki. Enter a generated URL here and you can copy and paste the secret URL: There are a number of ways that people can share tiddlers: Create a GitHub pull request to add your name to step by step A simple game built with TiddlyWiki, introduced in this post. http://zorklike.tiddlyspot.com I decided to see if it was possible to make some sort of game using only the core tiddlywiki with no plugins or javascript. I made a very bare bones zork/interactive fiction type game. It is currently the simplest thing I could make and claim it was a game, but I may add on to it in the future. It uses the 5.1.5 prerelease because the action-setfield widget saved lots of work making macros. One goal of this is to use nothing besides what is contained in the core tiddlywiki, so there is no javascript and no plugins.
A single file application is a web application where all of the assets are delivered in a single static file. This means that it can be downloaded and used offline without losing functionality. It can also be hosted on almost any type of web server. TiddlyWiki is an unusual single file application because it stores its data within the same file, and is capable of saving changes to itself. Every single file application must also by definition be a SinglePageApplication, but the converse is not true.
As defined by Wikipedia, a SinglePageApplication is a web application that presents itself as a single HTML document that dynamically loads additional content as the user browses the site. Frequently, single page applications are carefully designed to hide their nature, appearing and functioning as an ordinary static website by respecting the address bar and the back/forward navigation controls. Unusually, TiddlyWiki is also a SingleFileApplication.
These examples make use of the Days of the Week tiddler. These examples make use of the Days of the Week tiddler. These examples make use of the Days of the Week tiddler. Because TiddlyWiki is of British origin, its English documentation uses British spelling in preference to US spelling. Words like "customise" are spelled "-ise", not "-ize". Words like "colour" will also be spelled using UK English unless they are being used for reserved words in code, such as in CSS or JavaScript. Standard technical acronyms are written in upper case, without dots: "HTML", not "html" or "H.T.M.L." Avoid arbitrarily abbreviating words and sentences. But the following abbreviations are acceptable: Each input title is processed in turn. Contributions are dominantly appended to the output. The table-of-contents macros use this operator with The Stanford Javascript Crypto Library is a project by the Stanford Computer Security Lab to build a secure, powerful, fast, small, easy-to-use, cross-browser library for cryptography in Javascript. The StateMechanism in TiddlyWiki is at the heart of how complex user interfaces can be built from WikiText. In the browser, the TiddlyWiki display is produced by dynamically rendering the tiddler $:/core/ui/PageTemplate. Through various transclusions and other widgets it renders the entire user interface. The dynamic rendering is accomplished by a mechanism called "binding": any changes to the tiddlers in the store are dynamically reflected in the browser display. The stack of templates that make up the TiddlyWiki display are complex but we'll focus on the line that displays the main story column: Breaking down the attributes applied to the list widget: The $:/StoryList tiddler is an example of a StateTiddler: a tiddler that is used to hold the state of the user interface. Changes to the user interface are made indirectly, by changing the underlying state tiddlers, and letting TiddlyWiki ripple the changes through the user interface. Note how this approach makes the open tab in the sidebar very easy to implement: it is just another list widget referencing the same state tiddler, but with a different template: Now consider the implementation of the info panel within the tiddler template. We want to be able to toggle the info panel open and closed, which means that we must track its current state in a tiddler. However, we can't track the state in a tiddler called, say, $:/InfoPanelState because every tiddler would share the same state; changing the value of the tiddler would affect all tiddlers displayed in the story. The solution is to dynamically generate a unique title for each state tiddler that we need. We need to ensure that the same state tiddler title is generated each time a user interface element is rendered. To do that, we append together tokens representating each of the stack of transclusions that led to the current rendering location. Then that string of symbols is hashed to a simple numeric value. The process of generating a state tiddler title is encapsulated in the The "story river" (sometimes abbreviated to "story") is the sequence of tiddlers in the main column of the display. When a tiddler is viewed or edited, then within its branch of the widget tree, the storyTiddler variable contains the title of that tiddler. The default view template and edit template initialise TiddlyWiki5 provides several features to help you structure information as tiddlers, and model the relationships between them: You can use this construction to cause the wrapped content to be assigned specified CSS classes or styles: That renders as: ... and the underlying HTML is: Similar syntax is used to assign styles. For example: That renders as: ... and the underlying HTML is: Multiple styles and classes can be mixed. For example: That renders as: Some text
... and the underlying HTML is: The following core macros make it easy to specify alternative browser-specific properties when constructing a stylesheet tiddler: The following macros are documented separately: All these macros are defined in the $:/core/macros/CSS tiddler.
In looking for matches for System tags are used to give special behaviour to tiddlers. These are the available system tags These are the system tags in use in this wiki: System tiddlers are any tiddler whose title starts with TiddlyWiki models everything as tiddlers, including its internal components and configuration. Thus, even an apparently empty TiddlyWiki actually contains dozens of tiddlers that are necessary to enable it function correctly. Using system tiddlers prevents them from confusing casual users. The current system tiddlers are: TiddlyWiki provides several macros for generating a tree of tiddler links by analysing tags: The difference between the last two has to do with what happens when the user clicks a link in the right-hand panel: The top level of the tree consists of the tiddlers that carry a particular tag, known as the root tag. Tiddlers tagged with any of those make up the next level down, and so on. At each level, the tiddlers can be ordered by means of the The tree displays the Each tiddler in the tree is normally displayed as a link. To suppress this, give the tiddler a The table of contents is generated as an HTML ordered list. The To make a table of contents appear in the sidebar, see How to add a new tab to the sidebar. These two parameters are combined into a single filter expression like this: These examples derive tables of contents from the root tag You can explore the same structure with these clickable tag pills: The tabbed example uses the real TableOfContents of this documentation instead. TiddlyWiki5 formats tables using vertical bar characters like so: Exclamation marks are used to indicate header cells. The example renders as: Table cell alignment is controlled by inserting space characters before and/or after the cell content. For example: The example renders as: Vertical alignment of cells is done by inserting either a The example renders as: If you need to have a To merge a table cell with the one above, use the special cell text Renders as: Table CSS classes, captions, headers and footers can be specified as special pseudo-rows. The following example: Renders as: The tabs macro presents a selection of tiddlers as a set of tabs that the user can switch between. The tabs display the By default the tabs are arranged horizontally above the content. To get vertical tabs, set the Within the template, the title of the selected tab is available in the The The tag macro generates a tag pill for a specified tag. The output is sorted using the tag's The behaviour when The tag-pill macro generates a static tag pill showing a specified tag, but without the dropdown action provided by the tag Macro. Tagging is a way of organising tiddlers into categories. For example, if you had tiddlers representing various individuals, you could tag them as friend, family, colleague etc to indicate these people's relationships to you. A tag is in fact just a tiddler (or a potential tiddler), and it can have tags of its own. You can add any number of tags to the same tiddler. See Creating and editing tiddlers for instructions on how to tag. By tagging your tiddlers, you can view, navigate and organise your information in numerous additional ways: There are two more things you can do with tags: You can use the tag manager, found on the Tags tab under More in the sidebar, to change the colour of a tag's pill or add an icon to the pill. By default, tagged tiddlers are listed in alphabetical order. If you want any other order, add a The list field doesn't have to mention all of the tiddlers. See the precise rules TiddlyWiki uses to order tagged tiddlers.
Each input tag is processed in turn. The list of tiddlers carrying that tag is generated, sorted, and then dominantly appended to the operator's overall output. Each input title is processed in turn. The corresponding tiddler's tags are retrieved (in order of appearance in the A tag tiddler is any tiddler that is in use as a tag. The Tagging tab on the InfoPanel of a tag tiddler shows which tiddlers are tagged with the tag tiddler. A tag can be used without a corresponding tag tiddler.
TiddlyWiki5 can be used as a simple task management system without further customisation. The idea is that tasks be tagged When writing an instruction tiddler, start by planning a route through the information you wish to present. This should be a simple, logical, direct progression of thoughts, with no backtracking or forward references. Use this approach even within individual sentences: always proceed from cause to effect, from the old or known to the new or unknown. Keep sentences short and simple. A clear technical sentence seldom contains more than one idea. It therefore avoids parenthetical information. Similarly, keep paragraph structure simple. A flat presentation is often easier to understand than a hierarchical one. It is often possible to simplify a sentence without changing its meaning, merely by adjusting its vocabulary or grammatical structure. "Execution of the macro is performed" just means "The macro runs". "Your expectation might be..." just means "You might expect...". Prefer the active voice by default: "Jane creates a tiddler" rather than "a tiddler is created by Jane". The passive voice can be useful if you want the reader to focus on the action itself or its result: "a tiddler is created". But it can often be clearer to proceed from cause to effect and say "this creates a tiddler" in the active voice. Documentation often presents two items that are parallel either by similarity or by difference. The reader will more easily detect such a pattern if you use the same sentence or phrase structure for both. But this must be balanced with the need to avoid monotony. Prefer precise instructions over woolly descriptions. If something has a name, use it. If something lacks a name, give it a tiddler.
A template tiddler is not actually a type of tiddler, it is a role in which a tiddler can be used. Templates are a way to re-use chunks of WikiText. Transcluding through a template extends the basic functionality of Transclusion by combining two tiddlers: The best example of templating is the main story river in TiddlyWiki. Each tiddler in the story river is rendered through a ViewTemplate that specifies how each field is to be rendered. See Transclusion with Templates for details.
The Text-Slicer edition of TiddlyWiki contains tools to help advanced users slice long texts up into individual tiddlers. A TextReference is a general purpose way to describe a fragment of text as either a field of a tiddler, or an index within a data tiddler. In different situations, text references can be used to retrieve values, or to specify a value that should be modified. A TextReference consists of several parts: Most of the parts of a text reference can be optional: Text references can be used in several places: A number of extended filters are necessary to manipulate lists. The first set of filters are designed to move items from the tail of the list and insert them at specified locations in the list. Items are often appended to the list before using these filters. In general, these filters accept a suffix specifying the number of items to move (default to 1.) A second set of filters are designed to either add or remove from the list, a selected range of items from an array. These filters are best used with a reference to an array, stored in a field or data index elsewhere in the wiki (they may be used with a simple list of items, provided the items do not include white space.) In general, these filters accept a suffix specifying the number of items to move (default to All.) In this example we shall populate the 'DataIndex' index of the tiddler 'MyData' with the names of the days of the week, then clear this list. That renders as:
In this example we shall slice the populated list from the 'DaysOfTheWeek' index of the tiddler 'MyData' in order to insert items before and after a marker item (Wednesday) that are first appended to the list. That renders as:
In this example we shall slice the populated list from the 'DaysOfTheWeek' index of the tiddler 'MyData' in order to replace the marker item (Wednesday) with items which are first appended to the list. We shall then move 3 items to the head of the list which have first been appended to the list from referenced fields. That renders as:
In this example we shall slice the populated list from the 'DaysOfTheWeek' index of the tiddler 'MyData' in order to append to the truncated list, items from a referenced field. We shall then remove the first two of the items added. That renders as:
In this example we shall populate the list with numbers, then move items one by one from the head to the tail and from the tail to the head (best seen by clicking the lower buttons several times.) This example illustrates that the append[] and prepend[] operators do not enforce unique instances of an item and that, with the next run, any duplicates are removed. That renders as:
Every so often, TiddlyWiki users report heart-rending tales of personal data loss on the discussion groups: My entire TiddlyWiki has just been wiped out when Firefox crashed during saving a tiddly. https://groups.google.com/d/topic/tiddlywiki/oG2L7OXhUoI/discussion Last time I used it was last night at home on my Windows 7 desktop, hit the check mark to stop editing my last entry, it then saves via TiddlyFox and I eject my USB drive. I came to work this morning, plugged in my USB, enter my TW5 password and it doesn't want to open after several attempts. I browse to my TW5 html file and notice that my file size is no longer 3MB.. instead it is 80KB. This leads me to believe I lost everything. https://groups.google.com/d/topic/tiddlywiki/SXStDJ0ntGI/discussion Don't let it happen to you!
Backup your data!
TiddlyWiki is a very flexible, customisable system that puts you firmly in charge of your own data. Every care is taken in TiddlyWiki's development to ensure that it is a safe place to preserve your most valuable data but the ultimate responsibility to reduce the risk of data loss falls to users. The best way to make sure that your data is safe is to practise a rigorous system of backups: This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. This is an example tiddler. See Table-of-Contents Macros (Examples). Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Here is an example of the This example tiddler is used to illustrate some of the Filter Operators. These examples make use of the Days of the Week tiddler. In accordance with the Philosophy of Tiddlers, documentation tiddlers are typically short and interlinked. When a tiddler seems as if it needs to contain subheadings, this is often a sign that it should in fact be split into several tiddlers. But it is reasonable for a reference tiddler to consist of an untitled introductory section followed by a titled section of details. Consistency of terminology is essential if the reader is not to become confused. Consistent typography and punctuation lend a professional quality to the documentation. Macros can improve the consistency and maintainability of the text. Use numbered lists for step-by-step instructions, and bullet points for lists whose order is arbitrary. Use a definition list in preference to a bulleted list if each bulleted item would begin with a term and a colon. If at all possible, avoid burdening the reader with a nested list. Use a table when information naturally falls into three or more columns, and also for lists of parameters, attributes, etc in reference tiddlers. The documentation describes the current reality of TiddlyWiki. Avoid discussing future aspirations.
Many documentation tiddlers, especially the reference ones, are concerned with a single concept. Their titles should be succinct noun phrases like Each of the main words of such a title begins with a capital letter. Minor words such as "and", "or", "the", "to" and "with" do not. Tags also follow this pattern. Titles of this kind are plural if they denote a category of items, e.g. Where a concept is an item rather than a category, its tiddler has a singular title, e.g. Start a title with its most distinctive part. For instance, the tiddlers documenting the filter operators have titles like Avoid starting a title with the word "the". In the past, many tiddlers had CamelCase titles. This is gradually being phased out of the documentation to improve readability. CamelCase titles should no longer be used, even for tags, except in cases like Instruction tiddlers often have longer titles that can be more complicated than just a noun phrase, e.g. How-to tiddlers have titles that begin with "How to", e.g. TiddlerFields are name:value pairs that make up a tiddler. Field names must be lowercase letters, digits or the characters The standard fields are: Other fields used by the core are: The TiddlyWebAdaptor uses a few more fields: See the Advanced > Tiddler Fields tab of the control panel for details of the fields used in this wiki.
Tiddlers can be stored in text files in several different formats. Files containing single tiddlers can also have an auxiliary These files consist of a sequence of lines containing name:value pairs, a blank line and then the text of the tiddler. For example: Note that many text editors require that files include a terminating newline. If you want to avoid including the terminating newline in the text of the tiddler you can use this alternative syntax: The ContentType In TiddlyWiki 5, These Older The ContentType These files are a straightforward array of hashmaps of For example: The ContentType TiddlyWiki HTML files contain a collection of tiddlers encoded in For TiddlyWiki to import an unencrypted HTML file, it requires a Links are regions of a tiddler that can be clicked to cause navigation to a different tiddler. The navigation behaviour is determined by the current StoryView; the classic TiddlyWiki view displays the story as a linear sequence of tiddlers. Holding the control or command key while clicking on a tiddler link opens the target tiddler but doesn't navigate to it. This can be a useful way of queueing up tiddlers to be read later. Links are useful for modelling organic relationships between tiddlers, and particularly for expressing the navigational paths between tiddlers. The InfoPanel lists incoming links to a tiddler in the tab References. Filters can include the following filter operators that work with links: TiddlyWiki5 alters the appearance of tiddler links to convey additional information about the target of the link: External links are shown like this: http://tiddlywiki.com/ or like this.
Tiddlers are the fundamental units of information in TiddlyWiki. Tiddlers work best when they are as small as possible so that they can be reused by weaving them together in different ways. A "tiddler" is an informal British word meaning a small fish, typically a stickleback or a minnow. Other systems have analogous concepts with generic names like "items", "entries", "entities", "nodes" or "records". TiddlyWiki takes the view that it is better to be confusingly distinctive than confusingly generic. Internally, tiddlers are a list of uniquely named values called fields. The only field that is required is the Tiddlers are ubiquitous in TiddlyWiki. They are used to store everything from JavaScript code modules to the settings and state associated with the user interface.
The TiddlerWidget is used to set a value for the current tiddler variable, valid within the scope of the TiddlerWidget. The tiddler widget assigns several useful CSS classes to variables that it creates: You can use these variables like this: See also $:/core/ui/ViewTemplate.
An extension application for Google Chrome that enables TiddlyWiki to save changes directly to the file system. BuggyJay's TiddlyClip browser extension for Firefox permits clipping of text and graphics from web pages: http://tiddlyclip.tiddlyspot.com TiddlyClip allows parts of webpages to be clipped into a TiddlyWiki, and consists of two parts, the browser addon and the TiddlyWiki plugin. The addon is completely memoryless, any configuration is determined by the current TiddlyWiki that the user has select to work with (we say that the addon is docked to the TiddlyWiki). TiddlyClip is designed to work (in a basic mode) without configuration. Once the addon and plugin are installed, all the user has to do is select which TW to dock to.
TiddlyDesktop is an app for working with TiddlyWiki files (both TiddlyWikiClassic and TiddlyWiki version 5). It can be installed on Windows, Mac OS X or Linux. It is compatible with TiddlyWiki version 5 and the older TiddlyWikiClassic. See the Introducing TiddlyDesktop Video TiddlyDesktop is based on the OpenSource project NW.js. The source is on GitHub: See GitHub for detailed change history of this release This second version of TiddlyDesktop has the following fixes and improvements: See GitHub for detailed change history of this release This third version of TiddlyDesktop has the following fixes and improvements: See GitHub for detailed change history of this release This release includes a major reworking of the internals of TiddlyDesktop. Please report any problems or suggestions via GitHub issues, or post to the TiddlyWiki discussion group: http://groups.google.com/group/TiddlyWiki Note that there is currently no way to hide the toolbar for TiddlyWiki windows. This will be remedied soon! TiddlyDesktop itself is now an instance of the Node.js edition of TiddlyWiki. TiddlyWiki HTML files are run within embedded, sandboxed iframes with the "backstage" TiddlyWiki providing services such as saving to the file system. The advantage of this approach is that the user interface and functionality of the desktop application can now be customised and extended with exactly the same techniques that are used in regular TiddlyWiki. The functionality of this release barely matches that of the previous v0.0.3 version, but it lays the groundwork for a number of other features such as: See GitHub for detailed change history of this release This is an important bug fix release. Please report any problems or suggestions via GitHub issues, or post to the TiddlyWiki discussion group: http://groups.google.com/group/TiddlyWiki See GitHub for detailed change history of this release A minor bug fix release. Please report any problems or suggestions via GitHub issues, or post to the TiddlyWiki discussion group: http://groups.google.com/group/TiddlyWiki See GitHub for detailed change history of this release Please report any problems or suggestions via GitHub issues, or post to the TiddlyWiki discussion group: http://groups.google.com/group/TiddlyWiki Note: Upgrading to this release will clear your list of loaded wiki files. The files themselves are not affected; you can re-add them by dragging and dropping them into the wiki list window.
See GitHub for detailed change history of this release A minor bug fix release. Please report any problems or suggestions via GitHub issues, or post to the TiddlyWiki discussion group: http://groups.google.com/group/TiddlyWiki Here are the details of recent releases of TiddlyDesktop
Released 6일 12월 2015 at 00:00 See GitHub for detailed change history of this release A minor bug fix release. Please report any problems or suggestions via GitHub issues, or post to the TiddlyWiki discussion group: http://groups.google.com/group/TiddlyWiki TiddlyFox is an extension for Firefox that allows standalone TiddlyWiki files to save their changes directly to the file system. TiddlyFox works on both desktop and smartphone versions of Firefox. See Saving with TiddlyFox or Saving with TiddlyFox on Android for detailed instructions. TiddlyFox can be downloaded from the Mozilla Addons site: https://addons.mozilla.org/en-GB/firefox/addon/tiddlyfox/ You can also install the latest development version of TiddlyFox direct from GitHub: https://github.com/TiddlyWiki/TiddlyFox/raw/master/tiddlyfox.xpi
TiddlyIE is an extension for Internet Explorer that allows standalone TiddlyWiki files to save their changes directly to the file system. TiddlyIE works with the desktop version of Internet Explorer. See Saving with TiddlyIE. An interactive network visualisation plugin based on Vis.js. A demo that also contains installation instructions can be found here: http://tiddlymap.org. The plugin's GitHub repository can be found here. TiddlyMap is a TiddlyWiki plugin that allows you to link your wiki-topics (tiddlers) in order to create clickable graphs. By creating relations between your topics you can easily do the following: In general you may create, visualize and describe any network-structure you have in mind.
TiddlySpace is an environment for discourse on the web, built from TiddlyWeb. TiddlySpace was originally sponsored by Osmosoft at BT.
TiddlyWeb is a reference implementation for an interface to put Tiddlers on the web. It was created by a team led by Chris Dent at Osmosoft under BT from 2008 to 2012. TiddlyWeb can be used to host TiddlyWiki and TiddlyWiki5 wikis, making the individual tiddlers available over a flexible HTTP API. Other implementations of the API include: As of early 2017, none is currently as complete as TiddlyWeb itself.
TiddlyWiki is a rich, interactive tool for manipulating complex data with structure that doesn't easily fit into conventional tools like spreadsheets or wordprocessors. TiddlyWiki is designed to fit around your brain, helping you deal with the things that won't fit. The fundamental idea is that information is more useful and reusable if we cut it up into the smallest semantically meaningful chunks – tiddlers – and give them titles so that they can be structured with links, tags, lists and macros. Tiddlers use a WikiText notation that concisely represents a wide range of text formatting and hypertext features. TiddlyWiki aims to provide a fluid interface for working with tiddlers, allowing them to be aggregated and composed into longer narratives. People love using TiddlyWiki. Because it can be used without any complicated server infrastructure, and because it is open source, it has brought unprecedented freedom to everyone to keep their precious information under their own control. TiddlyWiki was originally created by JeremyRuston and is now a thriving open source project with a busy Community of independent developers.
The first TiddlyWiki Camp Paris was held on Saturday 6th June 2015. Bienvenue sur le site du TiddlyWiki Camp. Un évènement pour rencontrer la communauté de ce logiciel Open Source, libre et gratuit. Découvrez ce bloc note personnel polyvalent et adoptez-le pour gérer votre quotidien ! The TiddlyWiki community holds regular Google Hangouts, usually every Tuesday from 4pm to 6pm (UK time). They are announced in the TiddlyWiki Google group and on the TiddlyWiki Twitter account. Past Hangouts are archived in this YouTube playlist:
TiddlyWiki in the Sky for TiddlyWeb allows content to be synchronised between TiddlyWiki running in the browser and a TiddlyWeb (or TiddlySpace) server. Features include: To try out TiddlyWiki in the Sky for TiddlyWeb: A catchy jingle for TiddlyWiki. https://musescore.com/node/796056 Even if it sounds like some ol' jazz tune it IS an original composition and it should be quite obvious that the "hook of the melody" is a trill made by singing Tidd-ly Wiki :-). My lacking skills for writing text/lyrics should be apparent in the fact that the text consists of 12 Tidd-ly Wikis and some extra "tiddly's" - just for the sake of getting the message delivered ;-)... I've recorded every instrument on my guitar via a guitar synth on a loop machine (except for the drums - they were played live/in sync with the loop station on a "BeatBuddy" drum pedal..) - no pc was involved..
New in 5.1.14 TiddlyWiki incorporates a saver module that allows it to save changes directly with the Beaker Browser, an experimental peer-to-peer browser. Running TiddlyWiki on Node.js brings several important benefits over and above the single file version: For more information see: Here are the details of recent releases of TiddlyWiki5. See TiddlyWiki5 Versioning for details of how releases are named. (BetaReleases and AlphaReleases are listed separately).
Released 25일 7월 2016 at 09:48 See GitHub for detailed change history of this release This is a minor bug fix release. @Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: An extensive tutorial for getting started with TiddlyWiki. Recommended https://www.youtube.com/playlist?list=PLzZCajspPU_UjFn0uy-J9URz0LP4zhxRK This tutorial is aimed at giving you a basic foundation so that you can start using TiddlyWiki right away. Here we take a look at the technology behind Tiddlywiki, how to install it and create your first Tiddler.
A The format of the file is an object with two optional properties: Note that significant enhancements to Both the tiddlers and directories sections of Each field can be specified as either a string or array value to be assigned directly to the field, or New in 5.1.14 an object describing how to generate the value for the field. The object contains the following properties: The file specifications in the Note that providing a prefix here is equivalent to setting the Directory specifications in the Fields can be overridden for particular files by creating a file with the same name plus the suffix These example There are also several examples of This example retrieves all the files with the extension TiddlyWikiFolders are configured with a single The entries in the includeWikis array can be either a string specifying the relative path to the wiki, or an object with the following fields: Note that the build targets of included wikis are merged if a target of that name isn't defined in the current Configuration options include: For example: TiddlyWiki5 can be used to build older 2.x.x versions of TiddlyWikiClassic from their constituent components. Doing so involves these features: TiddlyWikiClassic is built from the command line by running TiddlyWiki on Node.js. A typical usage would be: TiddlyWiki5 is a reboot of TiddlyWiki for the next 25 years. It is a complete interactive wiki in JavaScript that can be run in the browser or on the server under Node.js.
Each release of TiddlyWiki5 is identified by a version number that complies with the Semantic Versioning 2.0.0 standard. According to the standard: While in alpha TiddlyWiki5 uses the pre-release label "alpha", for example: Each new alpha or beta release will bump the Note that prior to 5.0.1-alpha, TiddlyWiki5 used version numbers formatted as 5.0.0-alpha.19. The change was made to enable the upgrade mechanism to recognise plugin updates from the version information. During development when a new release is being prepared, the pre-release label is set to Version numbers TiddlyWiki5 uses the version information attached to plugins for determining which of two plugins is more recent during an upgrade or import. The pre-release label is ignored when performing these comparisons.
"TiddlyWiki Classic" refers to versions prior to 5.0, when TiddlyWiki was completely rewritten from the ground up. TiddlyWiki Classic is still being maintained at: http://classic.tiddlywiki.com/ MarioPietsch has started a site comparing the syntax and other changes between TiddlyWikiClassic and TiddlyWiki version 5: As well as traditional single file wikis, TiddlyWiki on Node.js supports wikis that are stored as a folder of individual tiddler files. Wiki folders can contain the following files and folders: Only the tiddlywiki.info file is required; everything else is optional. Any files and folders not listed above are ignored. To be usable in the browser, plugins just need to be included in the wiki. For wikis that are generated on the server, TiddlyWikiFolders can contain a tiddlywiki.info file that identifies the plugins to be included in this wiki: Plugins names refer to plugin folders listed in TiddlyWiki5's root All the TiddlerFiles in the The default processing for sub-folders within the The timeline macro returns a list of tiddlers in reverse chronological order of modification (or some other date field), grouped by day. The tiddlers are selected by means of a filter expression, into which the A title list is a line of text that presents one or more tiddler titles, strung together with a space between each one and the next. If a title contains a space, it needs double square brackets around it: Title lists are used in various places, including PermaLinks and the ListField. They are in fact the simplest case of a filter, and are thus a way of expressing a selection of titles.
A title selection is an ordered set of tiddler titles (or similar strings), in which no title appears more than once. Title selections are important in filter processing. The simplest way to write one down is as a title list.
The TranscludeWidget dynamically imports content from another tiddler. The TranscludeWidget treats any contained content as a fallback if the target of the transclusion is not defined (ie a missing tiddler or a missing field). TiddlyWiki parses text in two modes: Usually, the mode is determined by whether the transclude widget itself has been parsed in block or inline mode. This can be overridden with the For example, consider tiddler "A" with this content: And a tiddler "B" with this content: The result will be something like this: This can be fixed by amending tiddler "A": The transclude widget allows access to the individual tiddlers stored within a plugin. The following example will transclude the core version of the tiddler $:/DefaultTiddlers even if it has been overridden: Transclusion is the process of referencing one tiddler "A" from another tiddler "B" such that the content of "A" appears to be a part of "B". Copying and pasting content creates multiple copies of the same content in several different places. With transclusion, there can be a single copy and a special instruction in "B" which indicates the point at which content should be inserted from tiddler "A". Note that if the content of "A" is modified then the modification automatically appears in "B". This makes it easier to maintain repetitive content, by allowing every piece to be written in a single place, but viewed from many. The concept of transclusion plays an important role in the Philosophy of Tiddlers because it is the primary way in which small items of content are combined. To learn more: The power of WikiText comes from the ability to use the content of one tiddler inside another one. This ability takes several different forms that can easily be confused. The main distinction is between a transclusion and a textual substitution: Transclusion in WikiText describes the basics of transclusion. For example: As described in HTML in WikiText, you can also transclude tiddler field values as attributes of HTML elements and widgets. For example: As described in Introduction to Filters, you can also transclude tiddler field values as filter operands. For example: Variables that were defined with parameter or variable substitution are referred to as "macros". The value of a variable/macro can be transcluded with the syntax: As described in HTML in WikiText, you can also transclude a variable as the value of an attribute of HTML elements and widgets. For example: As described in Introduction to Filters, you can also transclude a variable as the value of a filter operand. For example: Textual substitution occurs when the value of a macro/variable is used. It is described in Macros in WikiText. The key difference between substitution and transclusion is that substitution occurs before WikiText parsing. This means that you can use substitution to build WikiText constructions. Transclusions are processed independently, and cannot be combined with adjacent text to define WikiText constructions.
To include some content from TiddlerA into TiddlerB, edit the latter to include the following text: The result is that the content of the text field (i.e. the main content) of TiddlerA is rendered within TiddlerB. The notation By omitting the tiddler title, the transclusion notation can also be used to display the content of a field from the current tiddler, for example: Notice that using In TiddlyWiki, transclusions are not limited to including raw content like the above. To learn about more advanced uses of transclusion, see Transclusion with Templates. See also: You can incorporate the content of one tiddler within another using the Transclusion notation: You can also use a TextReference instead of a tiddler title: A similar syntax can be used to transclude a list of tiddlers matching a specified filter: The WikiText transclusion syntax generates a TiddlerWidget wrapped around a TranscludeWidget. For example, See also: The transclusion variable is set by the TiddlyWiki's core uses it to detect recursive transclusion. It is also used to implement the The string has the following syntax: Many of the five items are often blank. In the sidebar, the value of When the tiddler This example shows how to distinguish between the sidebar and other environments: In the sidebar, this would show In Transclusion Basic Usage we have seen how to include the content of a tiddler A into a tiddler B. Now suppose that tiddler A contains: This makes tiddler A display its title with a yellow background (see Styles and Classes in WikiText to learn about CSS style). Imagine that you want to display the title in the same way in tiddler B. But you don't want to copy/paste the style instructions, because you might want to change the background colour later and you want to keep it consistent among tiddlers. This looks like a typical case of transclusion, so let's try to transclude tiddler A in tiddler B the usual way with Hello, my title is A
The style is applied as expected, but the title is wrong: we want The solution is to use a template. In this case, the source tiddler A is called the TemplateTiddler, and it is applied to tiddler B using the notation Hello, my title is B
Transcluding via a template is like applying a mask: assuming that the source tiddler contains generic references (like eye holes in a mask), these will be replaced with the target tiddlers values (like the eyes of the person who wears the mask). A template can be applied to any tiddler, not necessarily the current one. This is achieved using the full notation You can apply the system template is rendered as See also: There is a special edition of TiddlyWiki that simplifies creating and maintaining translations: Note that no knowledge of Node.js or GitHub is required. You can translate TiddlyWiki on Node.js, type See http://tiddlywiki.com/dev for technical details of creating and maintaining translations.
The translation mechanism of TiddlyWiki manages and switches between language plugins that provide translations of the TiddlyWiki user interface. The developer site at http://tiddlywiki.com/dev/ explains how translators can create and submit translations for TiddlyWiki. The title of the current language plugin is read from the tiddler $:/language. If the selected plugin changes then any displayed translateable text automatically changes. Translation plugins are bundles of tiddlers that each contain an indepedent translatable string. The strings are transcluded as needed. Translatable strings are generally in the namespace A personal website built with TiddlyWiki. TriTarget.org is a name I came up with in high school. I was big into computer programming and wanted a company name that was kinda catchy. When I made a few programs in BASIC I would brand them with TriTarget as a way to show off my company (Even though I didn't have one).
Here are some webpages with tips and tutorials related to TiddlyWiki. A Spanish guide to using TiddlyWiki on Android. http://3palmeras.wordpress.com/2014/11/05/microblogging-con-tiddlywiki/ Tiddlywiki software is prodigious based on javascript which is capable of holding a notepad that can be edited with Internet Explorer or function as a full blog, contained in a single file.
Translation by Google Translate
A guide (in French) to using TiddlyWiki on the BiblioBox, a variation of the PirateBox mobile communication and file sharing system. http://bibliobox.net/blog/post/2014/07/16/un-wiki-sur-votre-bibliobox-avec-tiddlywiki I've known TiddlyWiki since its beginning in 2004. For personal or professional needs, I used it regularly for notepad staff in 2007 and 2012. But I admit I ignored the tool during the past two years. And then I said yesterday: but why not put TiddlyWiki on a BiblioBox? Because it is a single HTML file with javascript. In addition I knew the existence of a server version for saving online amendments.
Hand optimised from a translation by Google Translate
Stephan Hradek's growing catalogue of tips, tutorials, and other resources. Stephan has also developed several plugins and macros that you can find at http://tiddlystuff.tiddlyspot.com/. http://tw5magick.tiddlyspot.com/ Some things in TiddlyWiki seem like Magic. As my preferred nick is Skeeve, I felt that TW5 Magick is a proper name for this collection of some of the "magic" tricks one can do with TiddlyWiki.
Tips and guides for using TiddlyWiki. http://dl.dropboxusercontent.com/u/118970/wiki/tw5tribalknowledge.html I never used Node.js until a couple weeks ago when I wanted to try a TW5 installation on Node and expand my knowledge a bit. I figured someone else may be in the same boat so I wrote it all down
A step by step guide to running TiddlyWiki on a CentOS Virtual Private Server. http://www.rosehosting.com/blog/install-and-run-tiddlywiki-on-a-centoos-6-vps-using-nginx/ In this tutorial we will guide you through the steps of installing and running TiddlyWiki on a CentOS 6 VPS. We will also install and configure Nginx as a reverse proxy, so you can run TiddlyWiki behind Nginx.
A guide to creating a baby journal with TiddlyWiki. http://a-penguin-in-redmond.blogspot.co.uk/2014/02/creating-baby-journal-with-tiddlywiki-5.html Keeping a journal about your baby is fun. It allows you to keep track of those events in your baby's life and development that are most important to you, and to tell them in your own words. [...] There are plenty of online services that can help to keep such a diary, but you need to have an internet connection to access them, and you have to trust them to keep your data safe.
A gamers guide to using TiddlyWiki. http://helugame.wordpress.com/2013/09/07/shining-ark-7-using-tiddlywiki/ I’ve been using TiddlyWiki for this game mainly to record the monsters’ locations and the items that they drop. This is so that when I need a certain item to upgrade/create weapons, I can quickly look it up; which monsters drop it and which quests have those monsters. As I play the game, as I encounter new information, I just input them into my Shining Ark TiddlyWiki. It’s like I’m building a wiki from scratch. The reason why I don’t just use online wikis is that 1) it’s too easy to get spoiled and 2) sometimes online wikis provide too much information (who cares about the non-gameplay related descriptions that can be found in the game, etc).
The tv-auto-open-on-import variable controls whether the By default, the tiddler is opened. But if this variable has the value An example of setting this variable to The tv-config-toolbar-icons variable controls whether toolbar buttons display icons. It can be set to The standard page template sets it to the value found in $:/config/Toolbar/Icons, with the result that this becomes the default for the whole page. The user can adjust this default by using a tickbox on the 설정 tab of the Control Panel. See also The tv-config-toolbar-text variable controls whether toolbar buttons display text. It can be set to The standard page template sets it to the value found in $:/config/Toolbar/Text, with the result that this becomes the default for the whole page. The user can adjust this default by using a tickbox on the 설정 tab of the Control Panel. See also The tv-get-export-image-link variable controls the value of the The variable should be a macro with the following parameter: The ability to override image URIs in this way can be useful when one is using the Node.js configuration to export a static version of a wiki. This example fetches the TiddlyWiki icon:
The tv-get-export-link variable controls the value of the The variable should be a macro with the following parameter: See also The tv-get-export-path variable specifies the full pathname to which the rendertiddlers Node.js command writes each tiddler. The variable should be implemented as a JavaScript macro with the following parameter: If no such macro exists, the tiddlers are written to files whose names are percent-encoded, in the command's output folder.
The tv-tiddler-preview variable indicates whether content is being rendered in a tiddler preview panel. The value is yes within the preview panel, and undefined elsewhere. The tv-wikilink-template variable controls the value of the The variable is treated as if it was a macro with the following parameters: The variable defaults to See also the This example shows a way of giving links a tooltip derived from the target tiddler's
Here is a standard link for comparison.
The tv-wikilinks variable controls the behaviour of the The widget normally produces a link to a tiddler. But if this variable has the value You can suppress links for a whole tiddler by placing the following line at the start of the tiddler's text: This variable has no effect on external links, as those do not involve the This experimental plugin adds the ability to display WikiText written for the original Classic version of TiddlyWiki. A collection of hints and tips, musings and proposals from long-time TiddlyWiki contributor Mat Goldman. http://twaddle.tiddlyspot.com/ This is Mat's, a.k.a <:-) little man-cave in the TiddlyVerse. Most TW development is, understandably, based on the premise that "Improve code ➔ Better TW". TWaddle is also about developing TW but from the perspective that Bigger community ⇄ Better TW. Thus, TWaddle looks more to people issues - how to attract them, how to make them stick with TW etc. I'm not a programmer but I am a TW enthusiast so I tiddlefiddle enough to make the occasional discovery of something cool. Given the amount of words I utter, it is also a mere numbers game before I say something that makes sense. TWaddle is intended to capture these eventualities.
The CommunitySearch wiki aggregates many public wikis from the community. It is updated automatically every day. At the time of writing, more than 5000 tiddlers are indexed, thus giving access to the largest known collection of TW content. It lets you search for some specific content among a preselected list of wikis. The indexed content is mostly focused on TW usage, so you would typically use this search system to find information about a particular aspect of TiddlyWiki. Say for example that you want to learn how to make a table of content, type "table of content" in the CommunitySearch box (also accessible in the default tiddler GettingStarted). The search results are links to various wikis, and point directly to the specific tiddlers containing your request. The CommunitySearch wiki also lets you: A collection of community tips and tutorials curated by Andreas Hahn, including a handy "customiser" that simplifies creating an empty TiddlyWiki with selected plugins and enhancements. Updated to include Tinka, a plugin that "provides a GUI to create and modify plugins more easily, therefore saving time on the packaging process". The intent of the project is to encourage people to use and actively tweak TiddlyWiki according to their needs. Similar to the old version, I also want to encourage people to share their knowledge and help other people get the most out of this wonderful piece of wiki software.
An authentication proxy for your TiddlyWiki. https://github.com/stevenleeg/twproxy One of my favorite aspects of TiddlyWiki has been that it's web-based, making it possible for me to access my wiki from everywhere (especially my phone). That being said, I'm a bit paranoid, so I was left a bit unsatisfied with the tiddlywiki server's HTTP basic auth for protecting my wiki. ~23 commits later, I've created something called twproxy that I'd like to share with you all today, as I'm hoping somebody other than myself will find it useful. Essentially it is a simple proxy that puts your wiki behind a username, password, and optional 2-factor auth prompt. This gives you added security in addition to the ability to remember your credentials past one browsing session (I was getting sick and tired of typing my username/password in over and over using basic auth).
WikiText can include blocks of text that are rendered with an explicit ContentType like this: This renders as: It is also possible to abbreviate the ContentType to a file extension. For example: This renders as: Unknown types render as plain text: Which renders as: A render type can also be specified, causing a particular text rendering to be displayed. For example: Renders as: Use the documentation macros to keep the text maintainable in the face of change. Be wary of arbitrarily applying raw bold or italic markup in a sentence. If there's a suitable macro, use that instead. If there isn't a suitable macro, write one or request one. Use simple backticks ( To keep things clean and simple, quotation marks and apostrophes should be straight Use Avoid using a single hyphen Items in lists and tables should only end with a full stop (period in US English) if they are complete sentences. They should have no trailing punctuation otherwise. It is very rarely necessary to use an exclamation mark in professional documentation.
Follow these instructions when using TiddlyWiki as a standalone HTML file: Follow these instructions when using TiddlyWiki under Node.js: A tiddler is deemed to have no tags if it: There are regular releases of TiddlyWiki with bug fixes and improvements. It's a good idea to keep up to date by regularly upgrading to the latest version. The process described here is for upgrading standalone TiddlyWiki files. There is a different procedure for upgrading TiddlyWiki on Node.js. When upgrading, please remember the The First Rule of Using TiddlyWiki: You are responsible for looking after your own data; take care to make backups, especially when upgrading the TiddlyWiki core
This process will work on most desktop browsers. Note that none of your personal data leaves your browser with this process. This will download a file called upgrade.html to your computer. This file is the upgrade of your old file. You may need to open the location where upgrade.html was downloaded, rename upgrade.html with the name of the old file you are upgrading, and replace the old file by moving the new file in its place. You can also download http://tiddlywiki.com/upgrade.html locally and perform the same drag-and-drop procedure to upgrade your files. The following error occurs when trying to perform the online upgrade procedure using Firefox: Error while saving: Error:NS_ERROR_DOM_BAD_URI: Access to restricted URI denied
The upgrade operation falls foul of a security restriction in Firefox. Until this can be resolved, we suggest either using the offline upgrader, or using Chrome to perform the upgrade: It is possible for a customisation applied in a previous version to break when upgraded to the latest version. There are two techniques you can use to help track down issues: You can see which shadow tiddlers have been overridden in the Filter tab of advanced search. Select "Overridden shadow tiddlers" from the dropdown.
If you've installed TiddlyWiki on Node.js on the usual way, when a new version is released you can upgrade it with this command: On Mac or Linux you'll need to add sudo like this: A URI (also often known as a URL) is a string of characters used to specify the location of a resource such as a web page.
By default, when running TiddlyWiki on Node.js, the server exposes the wiki at the URI formed from the protocol, host and port - for example, There are two steps to running the wiki at a custom path like With the advent of ES2015 (also known as ES6) and the availability of Babel.js plugin developers can leverage ES2015 when writing TiddlyWiki plugins. Understanding the nuances between TiddlyWiki's module sandbox and how Babel compiles it's output ready for a module system like CommonJS/AMD. Please understand how the PluginMechanism works since this is all about writing a plugin using Babel to compile the output that will be included in the final TiddlyWiki (for example TiddlyWiki on Node.js). You can install Babel using If your developing the plugin for inclusion to the npm registry (or for convenience) you can avoid the global install and save it to the local Inside your plugin project edit the file Pick a folder to store the ES2015 JavaScript and a folder to output the TiddlyWiki ready JavaScript. In this example I will use In a plugin written pre-ES2015 one would But in ES2015 the following would look like: Conveniently when Babel compiles this it will essentially output the same JavaScript as the first pre-ES2016 code. Also, in ES2016 you are required to declare your imports at the beginning and can not dynamically Exporting is the same thing. Instead of assigning to a property of the It is important to understand that in ES2016 the default export is not supported in TiddlyWiki. This is mostly because the core code expects specific properties to be attached to the In the example of a widget ES2016 plays well with class inheritance. To contrast the typical Widget definition would look something like this: With classes this ceremony can be tightened up: With classes one could eliminate much of the For non class modules you can use the Or in the case of a Macro: ES2015 comes with some features that are part of the JavaScript core objects. These are not supported by all browsers. To use these features in most browsers you will need a polyfill. Babel has a polyfill package that you can include. See Adding Babel Polyfill to TiddlyWiki for how to accomplish this. Here is an example ES2015 plugin/widget that will show the time and update it: You can use links (normally displayed as blue text) to navigate from one tiddler to another. Clicking on a link to any tiddler will take you to that tiddler. If the tiddler is closed, it will be opened. The wonderful thing about TiddlyWiki is that it makes links to tiddlers as accessible as possible. There are links everywhere! Here are the key places where you can find links to tiddlers in TiddlyWiki: You can insert preconfigured snippets of text to use stamp from toolbar. Click stamp () and just select a snippet. Tip: You can also create a snippet tiddler using the new tiddler button in the sidebar, and add tag $:/tags/TextEditor/Snippet
The first steps to changing the appearance of TiddlyWiki are to choose and apply one of the available themes, or to modify the colour palette. In addition, custom CSS stylesheets can be defined by tagging a tiddler Custom stylesheets are applied independently from theme stylesheets. Therefore, it is often necessary for the css rules in your custom stylesheet to be more specific than those of the theme you want to override. For example, Ordering of stylesheets is controlled in the main stylesheet $:/core/ui/PageStylesheet by the following list filter: With help of a list-after field in a custom stylesheet, the order of the stylesheets can be rearranged to ease overwriting theme styles. To check the order of all stylesheets in use, enter the following filter in the filter tab of Advanced search: Usually it is best to use the type If you wish to use macros and transclusions in your stylesheets you should instead use the default WikiText type The A stylesheet tiddler is processed such that it is first wikified and then the text portion of the ouput is extracted to apply as the CSS. Any HTML tags you will use in your stylesheet are thus ignored. For example, HTML elements generated by the RevealWidget will not affect the output. As in the following example, you can wrap CSS rules in The TiddlyWiki core provides several global macros that are helpful in constructing stylesheets.
TiddlyWiki5 allows you to use SVG to display vector graphics in two ways: You can embed an SVG image tiddler using the ordinary transclusion syntax: You can also use Typed Blocks in WikiText to embed an inline SVG tiddler. The implications of the image being rendered within an The other way to use SVG is to embed the Note that inline SVG elements don't need an You can include simple text strings in SVG images using the HTML or WikiText content can be included within inline SVG images using the When embedding SVG elements you can also use WikiText features like transclusion. For example, here is an SVG circle with the radius set to the value in the tiddler $:/SVGExampleRadius: You can edit the value of the radius here: This demo shows how to use SVG to render transcluded text along a path. Enter some text in the textbox below to try it out; view the source to see how it is done. TiddlyWiki5 can be used to produce documentation for GitHub projects. It lets you maintain a single set of documentation as a TiddlyWikiFolder containing separate tiddler files under source code control, and then use it to produce When displaying the contents of a folder GitHub will look for a This is done with this command: It saves the tiddler ReadMe to the file By default, tiddler links will be rendered as See the LinkWidget for more details. In this example, tiddler links are rendered as links to the static rendering of tw5.com.
TiddlyWiki5 can be used on the command line to perform an extensive set of operations based on TiddlyWikiFolders, TiddlerFiles and TiddlyWikiFiles. For example, the following command loads the tiddlers from a TiddlyWiki HTML file and then saves one of them in static HTML: Running The first argument is the optional path to the TiddlyWikiFolder to be loaded. If not present, then the current directory is used. The commands and their individual arguments follow, each command being identified by the prefix The available commands are: A variable is a snippet of text that can be accessed by name within a particular branch of the widget tree. The snippet is known as the variable's value. A new variable is defined using a The For an overview of how to use variables, see Variables in WikiText. Despite the term "variable", each snippet is a constant string. The apparent variability is actually the result of the presence of multiple variables with the same name in different parts of the widget tree. Macros are a special form of variable whose value can contain placeholders that get filled in with parameters whenever the macro is used. By themselves, the snippets are not parsed as WikiText. However, a variable reference will transclude a snippet into a context where WikiText parsing may be occurring. Within a snippet, the only markup detected is The TiddlyWiki's core has several variables built in.
See also the introduction to the concept of variables. To transclude the value of a variable, use the macro call syntax with no parameters. You can also use a A macro snippet can contain A variable's value can be used as a filter parameter, or as a widget attribute. The latter supports macro parameters. The
This example uses the The vars widget allows multiple variables to be set in one operation. In some situations it can result in simpler code than using the more flexible SetWidget. The content of the Consider a case where you need to set multiple variables. Using the In contrast, here is the same example using the It should be noted that this widget differs from the set widget in the following ways: The following TiddlyWiki videos are available. The aim is to curate a series of videos to guide people through getting up and running with TiddlyWiki. Contributions are welcome. The view widget displays the contents of a tiddler field in a specified format. The content of the The following formats can be specified in the The view widget allows access to the individual tiddlers stored within a plugin. The following example will view the core version of the tiddler $:/DefaultTiddlers even if it has been overridden: That renders as: An interactive timeline visualisation plugin based on Vis.js. A demo can be found here: http://kixam.github.io/TW5-visjsTimeline/. vis.js Timeline is a TiddlyWiki plugin that allows you to link your wiki-topics (tiddlers) in order to create clickable timelines. This project is a direct continuation of emkay's plugin.
The original Classic version of TiddlyWiki is still available at: http://classic.tiddlywiki.com. Note that the current version of TiddlyWiki is not fully backwards compatible with TiddlyWikiClassic. Content can be imported but will need massaging to adapt to the new WikiText format. A tw2parser plugin is under development that will allow faithful display of most content created for TiddlyWikiClassic: The The add field message is usually generated with the ButtonWidget, and is handled by the FieldManglerWidget.
The The add tag message is usually generated with the ButtonWidget, and is handled by the FieldManglerWidget.
The autosave wiki message causes the current saver module to perform a background save if it is required. The autosave wiki message should be generated whenever changes are made to the store. For example, the navigator widget generates the autosave wiki message as part of its handling of the WidgetMessage: tm-save-tiddler, WidgetMessage: tm-delete-tiddler and WidgetMessage: tm-perform-import. The autosave wiki message is handled by the TiddlyWiki core SyncMechanism which invokes the current SaverModule. Not all SaverModules can handle autosaving.
The The refresh message is usually generated with the ButtonWidget and is handled by the core.
The This message is typically generated with the ButtonWidget, and is handled by the core itself.
The download file message causes the current saver module to prompt the user to download the result of parsing a specified template tiddler as a file. It requires the following properties on the The download file message is usually generated with the ButtonWidget. The download file message is handled by the TiddlyWiki core SyncMechanism which invokes the current SaverModule.
A The At this point the following bitmap operations have been implemented: Resizes the image to the specified width and height. Parameters include: Clears the contents of the image and fills it with a solid colour. Parameters include: An example can be seen in $:/core/ui/EditorToolbar/size-dropdown: A The At this point the following text operations have been implemented: Excises the currently selected text into a new tiddler and replaces it with a link, a macro or a transclude of the new tiddler. Parameters include: Replaces all contents of the editor with the provided text. Replaces the current selection with the provided text. Prefixes the currently selected line(s) with the provided character. If a line is already prefixed by the provided prefix, the prefix is removed instead. Example Setting character=" Surrounds the selected lines with the provided Surrounds the current selection with the provided An example can be seen in $:/core/ui/EditorToolbar/bold: The The The The The The The fullscreen message toggles the "fullscreen" mode of the browser, if it supports it. The fullscreen message is handled by the TiddlyWiki core. The The home message is usually generated with the ButtonWidget and is handled by the core.
The The following snippet will install the CodeMirror plugin from the official plugin library: The The The following snippet will load the official plugin library: The The login message prompts the user for a username and password and attempts to login to the current serverside host. The tiddler $:/status/IsLoggedIn reflects the current login status with the values "yes" or "no", and $:/status/UserName reflects the current username. The login message is handled by the TiddlyWiki core SyncMechanism which invokes the current SyncAdaptorModule (typically the tiddlywiki/tiddlywebadaptor plugin). The logout message attempts to log the user out of the current serverside host. The tiddler $:/status/IsLoggedIn reflects the current login status with the values "yes" or "no", and $:/status/UserName reflects the current username. The logout message is handled by the TiddlyWiki core SyncMechanism which invokes the current SyncAdaptorModule (typically the tiddlywiki/tiddlywebadaptor plugin).
The modal message displays a specified tiddler in a modal overlay that dims the main page. It requires the following properties on the The "currentTiddler" variable is set to the title of the modal tiddler, but can be overridden by specifying a different value in The modal message is usually generated with the ButtonWidget. The modal message is handled by the TiddlyWiki core. Here is an example of displaying a modal and passing parameters to it: That renders as: Your name: Your message:
The The navigate message requires the following properties on the The navigate message can be generated by the LinkWidget, the ActionNavigateWidget and the ButtonWidget, and is handled by the NavigatorWidget.
The notify message briefly displays a specified tiddler as a small alert in the upper right corner of the page. It requires the following properties on the The notify message is handled by the TiddlyWiki core.
The The The The permalink message supports the following properties on the The permalink message can be generated by the ButtonWidget, and is handled by the story mechanism.
The The permaview message supports the following properties on the The permaview message can be generated by the ButtonWidget, and is handled by the story mechanism.
New in 5.1.14 The The print message is usually generated with the ButtonWidget and is handled by the core.
The The remove field message is usually generated with the ButtonWidget, and is handled by the FieldManglerWidget.
The The remove tag message is usually generated with the ButtonWidget, and is handled by the FieldManglerWidget.
The save wiki message causes the current saver module to perform a full save operation. The save operation can involve user interaction. It requires the following properties on the The save wiki message is usually generated by the ButtonWidget. The save wiki message is handled by the TiddlyWiki core SyncMechanism which invokes the current SaverModule.
The Due to the nature of the parameter, the The server refresh message attempts to synchronise the latest changes to the current serverside host. The server refresh message is handled by the TiddlyWiki core SyncMechanism which invokes the current SyncAdaptorModule (typically the tiddlywiki/tiddlywebadaptor plugin).
The This message is typically generated with the ButtonWidget, and is handled by the core itself.
The The TiddlyWiki's display is driven by an underlying collection of widgets. These are organised into a tree structure: each widget has a parent widget and zero or more child widgets. TiddlyWiki generates this widget tree by parsing the WikiText of tiddlers. Each component of the WikiText syntax, including even the trivial case of ordinary text, generates a corresponding widget. The widget tree is an intermediate representation that is subsequently rendered into the actual display. Widgets are analogous to elements in an HTML document. Indeed, HTML tags in WikiText generate dedicated element widgets. Each class of widget contributes a specific ability to the overall functionality, such as the ability to display an image or a button, to call a macro or transclude text from elsewhere, or to mark a piece of text as a heading. The more specialised widgets use a general-purpose widget syntax as their only possible WikiText representation. The following classes of widget are built into the core: Widgets provide rich functionality within WikiText. They have the same syntax as HTML elements, but the tag name always starts with Note that widgets inherit all the features of HTML in WikiText: See HTML in WikiText for more details. The available widgets include: The wikify widget parses and renders a string of text and assigns the result to a specified variable. The new value of the variable is available to the content within the wikify widget. The content of the The available output types are: WikiText is a concise, expressive way of typing a wide range of text formatting, hypertext and interactive features. It allows you to focus on writing without a complex user interface getting in the way. It is designed to be familiar for users of MarkDown, but with more of a focus on linking and the interactive features. See Formatting text in TiddlyWiki for an introduction to WikiText. The following elements of WikiText syntax are built into the core: Under Windows it is possible to convert TiddlyWiki into a true local application by renaming the HTML file to have the extension Note that one disadvantage of this approach is that the TiddlyWiki file is saved in UTF-16 format, making it up to twice as large as it would be with the usual UTF-8 encoding. However, opening and saving the file via another saving method will re-encode the file to UTF-8. See Wikipedia for more details: http://en.wikipedia.org/wiki/HTML_Application
If you want to contribute to TiddlyWiki's development, rather than installing TiddlyWiki in the usual way, you can work directly with the GitHub repository. Mario Pietsch has created a short video introduction. After this procedure you can work with TiddlyWiki5 via npm as though it were installed in the usual way with See also Scripts for TiddlyWiki on Node.js.
Information to help you get started using TiddlyWiki: The XLSX Utilities edition of TiddlyWiki contains tools to work with SlidesnStories
MetaTabs
It is inspired by MagicTabs and Tiddlyscholar by Alberto Molina Pérez, which are very elaborated tools that alas do not seem to be in active development any more.
I wanted to change the behaviour in some ways. For example I wanted show tabs only if they have content. ...furthermore there is
Introduction
Content and Attributes
Attribute Description $basetitle The initial title that will be attempted. If a tiddler with that title already exists, then a numerical counter is added to the title and incremented until it is unique $savetitle A text reference identifying a field or index into which the title of the newly created tiddler will be stored after it is created $timestamp Specifies whether the timestamp(s) of the target tiddler will be updated (modified and modifier, plus created and creator for newly created tiddlers). Can be "yes" (the default) or "no" {any attributes not starting with $} Each attribute name specifies a field to be created in the new tiddler Examples
New button caption: <$edit-text tiddler="$:/state/new-button-caption" tag="input" default=""/>
<$button>
<$action-createtiddler $basetitle="Homemade Button" tags="$:/tags/PageControls" text={{$:/state/new-button-caption}}/>
Create non-functional page control button
</$button>Introduction
Content and Attributes
Attribute Description $tiddler The title of the tiddler whose fields are to be modified (if not provided defaults to the current tiddler $field Optional name of a field to delete {any attributes not starting with $} Each attribute name specifies a field to be deleted. The attribute value is ignored and need not be specified Examples
<$button>
<$action-deletefield caption tags/>
Delete "caption" and "tags"
</$button><$button>
<$action-deletefield $tiddler="HelloThere" modified tags/>
Delete "modified" and "tags" from ~HelloThere
</$button><$button>
<$action-deletefield $tiddler="HelloThere" $field="text"/>
Delete text from ~HelloThere
</$button>Introduction
Content and Attributes
Attribute Description $tiddler Optional title of the tiddler to be deleted $filter Optional filter identifying tiddlers to be deleted Examples
<$button>
<$action-deletetiddler $tiddler="HelloThere"/>
Delete "~HelloThere"
</$button><$button>
<$action-deletetiddler $filter="[tag[TableOfContents]]"/>
Delete tiddlers tagged "~TableOfContents"
</$button>Introduction
Content and Attributes
Attribute Description $tiddler The title of the tiddler whose lists are to be modified (if not provided defaults to the current tiddler $field The name of a field to be manipulated as a list (defaults to 'list') $index Optional index of a property in a data tiddler index to be manipulated as a list $filter An optional filter expression, the output of which will be saved to the field/index being manipulated $subfilter An optional subfilter expression, which takes the list being manipulated as input, and saves the modified list back to the field/index being manipulated $tags An optional subfilter expression, which takes the 'tags' field of the target tiddler as input, and saves the modified list of tags back to the 'tags' field Extended Filter Operators
Listops Operators
Operator
Purpose
allafter
discard all items except those after the marker
allbefore
discard all items except those before the marker
append
append a range of items from an array to the list
move
move marker N places in the list
prepend
prepend a range of items from an array to the list
putafter
move N trailing items after the marker
putbefore
move N trailing items before the marker
putfirst
move N trailing items to the head of the list
putlast
move N leading items to the tail of the list
remove
remove a list of titles specified in the operand from the input
replace
replace marker with N trailing items
sortby
sort the current list in the order of the list referenced in the operand
Examples
<$button>
<$action-listops $field="myfield" $subfilter="efg hlm pqr"/>
Populate 'myfield'
</$button>
<$button>
<$action-listops $field="myfield" $subfilter="abc xyz"/>
Append More Items
</$button>
<$button>
<$action-listops $field="myfield" $subfilter="-abc -hlm"/>
Remove Items
</$button>
<$button>
<$action-listops $field="myfield" $filter="[[]]"/>
Clear 'myfield'
</$button>
<$list filter="[list[!!myfield]]">
</$list><$button>
<$action-listops $field="myfield" $subfilter="-efg ijk xyz [[this is a title]] +[sort[]]"/>
Mangle List
</$button>
<$button>
<$action-listops $field="myfield" $subfilter="-xyz -[[this is a title]] +[!sort[]]"/>
Unmangle List
</$button>
<$list filter="[list[!!myfield]]">
</$list><$button>
<$action-listops $tags="+[append{Days of the Week!!short}] $:/tag1 $:/tag2 $:/tag3"/>
Populate 'tags'
</$button>
<$button>
<$action-listops $tags="+[!remove:2{!!tags}]"/>
Remove Last Two Tags
</$button>
<$button>
<$action-listops $tags="+[!prefix[$:/]]"/>
Remove System Tags
</$button>
<$button>
<$action-listops $tags="-Mon -Tue"/>
Remove Mon and Tue
</$button>
<$button>
<$action-listops $tags="+[prefix[$:/]] ActionWidgets Widgets"/>
Remove User Tags
</$button>
<$button>
<$action-listops $tags="+[[]] ActionWidgets Widgets"/>
Clear Tags
</$button>
<$list filter="[list[!!tags]]">
</$list>Introduction
Content and Attributes
Attribute Description $to The title of the target tiddler for the navigation (if not provided defaults to the current tiddler $scroll Optional parameter determining whether the navigation will also cause a scroll to the target tiddler (see below) Scroll handling
$scroll attribute can be set to "yes" to force scrolling to occur to bring the target tiddler into view. If set to "no" then scrolling does not occur. If the $scroll attribute is omitted then scrolling occurs unless either:$scroll setting for all of them.Examples
<$button>
<$action-navigate $to="ButtonWidget"/>
<$action-navigate $to="ActionWidgets"/>
Click me!
</$button>Introduction
Content and Attributes
Attribute Description $message The message to send (eg, WidgetMessage: tm-new-tiddler) $param Optional parameter string whose meaning is dependent on the message being sent $name Optional name of additional parameter $value Value for optional parameter whose name is specified in $name{any attributes not starting with $} Multiple additional, optional named parameters that are attached to the message Examples
<$button>
<$action-sendmessage $message="tm-modal" $param="SampleWizard"/>
<$action-sendmessage $message="tm-notify" $param="SampleNotification"/>
<$action-sendmessage $message="tm-new-tiddler" title="This is newly created tiddler" tags="OneTag [[Another Tag]]" text=<<now "Today is DDth, MMM YYYY">>/>
Click me!
</$button>Introduction
Content and Attributes
Attribute Description $tiddler The title of the tiddler whose fields are to be modified (if not provided defaults to the current tiddler $field Optional name of a field to be assigned the $value attribute $index Optional index of a property in a data tiddler to be assigned the $value attribute $value The value to be assigned to the field or index identified by the $field or $index attribute. If neither is specified then the value is assigned to the text field. If no value is specified, $field or $index will be deleted. $timestamp Specifies whether the timestamp(s) of the target tiddler will be updated (modified and modifier, plus created and creator for newly created tiddlers). Can be "yes" (the default) or "no" {any attributes not starting with $} Each attribute name specifies a field to be modified with the attribute value providing the value to assign to the field Examples
<$button>
<$action-setfield $tiddler="$:/state/tab-1749438307" text="$:/core/ui/ControlPanel/Appearance"/>
<$action-navigate $to="$:/ControlPanel"/>
Go to Control Panel "Appearance" tab
</$button>
<$button>
<$action-setfield $tiddler="$:/state/tab-1749438307" text="$:/core/ui/ControlPanel/Settings"/>
<$action-navigate $to="$:/ControlPanel"/>
Go to Control Panel "Settings" tab
</$button><$button>
<$action-setfield $tiddler="HelloThere" tags="NewTag [[Another New Tag]]" color="red"/>
<$action-setfield $tiddler="$:/state/popup/tiddler-info--1779055697" text="(568,1443,33,39)"/>
<$action-setfield $tiddler="$:/state/tab--1890574033" text="$:/core/ui/TiddlerInfo/Fields"/>
<$action-navigate $to="HelloThere"/>
Modify ~HelloThere
</$button><$button>
<$action-setfield $tiddler="HelloThere" tags="MoreTag [[Further More Tags]]" color="green"/>
<$action-sendmessage $message="tm-edit-tiddler" $param="HelloThere"/>
Edit ~HelloThere
</$button><$button>
<$action-setfield $tiddler="$:/state/tab-1749438307" $field="text" $value="$:/core/ui/ControlPanel/Appearance"/>
<$action-navigate $to="$:/ControlPanel"/>
Go to Control Panel "Appearance" tab
</$button>
actions attribute of the triggering widget (this is the preferred way)Assigning action widgets with the
actions attributeactions attribute of the triggering widget. Usually, it is more convenient to use a macro to assign the action widgets to a variable. For example, here is a button that triggers two actions of sending different messages:\define my-actions()
<$action-sendmessage $message="tm-home"/>
<$action-sendmessage $message="tm-full-screen"/>
\end
<$button actions=<<my-actions>>>
Click me!
</$button>Assigning action widgets by embedding
<$button>
<$action-sendmessage $message="tm-home"/>
<$action-sendmessage $message="tm-full-screen"/>
Click me!
</$button>
<div class="tc-table-of-contents">
<<toc-selective-expandable 'TableOfContents'>>
</div>\define twitterFollowButton(username)
<iframe allowtransparency="true" frameborder="0" scrolling="no" src="//platform.twitter.com/widgets/follow_button.html?screen_name=$username$" style="width:300px; height:20px;"></iframe>
\end<iframe allowtransparency="true" frameborder="0" scrolling="no" src="http://platform.twitter.com/widgets/follow_button.html?screen_name=jermolene" style="width:300px; height:20px;"></iframe>plugins/babel-polyfill folder. Then create the plugins/babel-polyfill/plugin.info file with the following in it:{
"title": "$:/plugins/babel/babel-polyfill",
"description": "Babel Polyfills for ES2015 support",
"author": "Your Name Here",
"core-version": ">=5.0.0"
}plugins/babel-polyfill/files folder. Then create the plugins/babel-polyfill/files/tiddlywiki.files file with the following in it:{
"tiddlers": [
{
"file": "polyfill.min.js",
"fields": {
"title": "$:/plugins/babel/babel-polyfill/polyfill.min.js",
"type": "application/javascript",
"module-type": "library",
"global-module": "true"
}
}
]
}polyfill.min.js you downloaded/saved.plugins/babel-polyfill/plugin.js file with the following in it:/*\
title: $:/plugins/babel/babel-polyfill/plugin.js
type: application/javascript
module-type: startup
Load the babel-polyfill library on startup
\*/
exports.startup = function() {
$tw.modules.execute('$:/plugins/babel/babel-polyfill/polyfill.min.js');
}Promise in your plugin code.
purpose extend each input title with a prefix input a selection of titles parameter S = a string of charactersoutput the input, but with S added to the start of each title
purpose extend each input title with a suffix input a selection of titles parameter S = a string of charactersoutput the input, but with S added to the end of each titleSystemTiddler Titles
$:/_ for any system tiddlers that you create to ensure that they are near the top of the system tiddler listing in the sidebar
purpose find which input title follows a specified one input a selection of titles parameter T = one of those titlesoutput the title that immediately follows T in the inputT is not present in the input, or is the last title there, then the output is empty.[list[Days of the Week]after[Monday]]
[list[Days of the Week]after[Sunday]]
Field Description title By default, alert titles have the prefix $:/temp/alerts/text The text of the alert message modified Date of the alert (used for ordering the alerts on screen) component Component name associated with the alert tags Must include $:/tags/Alert
purpose find all titles of a fundamental category input ignored, unless the parameter is empty parameter zero or more categories output the titles that belong to all the specified categories Category Members Sorted currentjust the current tiddler – missingall non-existent tiddlers to which there is at least one hard link no orphansall tiddlers to which there are no hard links by title shadowsall the shadow tiddlers that exist, including any that have been overridden with non-shadow tiddlers no tiddlersall the non-shadow tiddlers that exist no tagsall the tags in use on non-shadow tiddlers no is operator is similar, but its scope is restricted to its input.[list[Days of the Week]] +[allafter[Wednesday]]
[list[Days of the Week]] +[allafter:include[Wednesday]]
[list[Days of the Week]allbefore[Wednesday]]
[list[Days of the Week]allbefore:include[Wednesday]]
Release 5.0.1-alpha
Improvements
$:/theme isn't defined or refers to a missing tiddler, then fallback through Snow White to Vanilla. This means that empty.html now defaults to Snow WhiteBug fixes
$:/tags/PageControls tiddlers from being reorderedInternal changes
5.0.x-beta and the final release will be 5.1.x
purpose append a range of items from an array to the list input a list of items suffix an integer N, defaulting to all parameter list = the array of items to be appended to the tail of the listoutput a list with items appended from the head of the operand array ! outputa list with items appended from the tail of the operand array [list[Days of the Week]append[Tomorrow]]
[list[Days of the Week]append[Yesterday Today Tomorrow]]
[list[Days of the Week]append:4{Days of the Week!!short}]
"A free, open source wiki revisited" by Mark Gibbs, NetworkWorld
"Setting Up a Personal TiddlyWiki Server on OS X" by Kris Johnson
"TiddlyWiki" by Sander de Boer
"Notizen mit TiddlyWiki systemübergreifend nutzen" by Michael Sonntag
"TiddlyWiki 5 im Betatest" by besim
Embedded Audio
{{TiddlyWiki.mp3}}External Audio
{{Caruso - Ave Maria}}
purpose find the titles that link to each input title input a selection of titles parameter none output any non-system titles that contain hard links to the input titles [[HelloThere]backlinks[]]
[all[current]backlinks[]]
dat:// protocol. The extraordinary thing is that if you are running Beaker then you can also browse to sites hosted by other users, without needing any server in between.dat:// sites.
purpose find which input title precedes a specified one input a selection of titles parameter T = one of those titlesoutput the title that immediately precedes T in the inputT is not present in the input, or is the first title there, then the output is empty.[list[Days of the Week]before[Saturday]]
[list[Days of the Week]before[Monday]]
Release 5.0.18-beta
File Layout of tiddlywiki.com
Hackability Improvements
list-links macro (further improvements are planned).markdown and .md filestimeline macro to support a subfilterBug Fixes
.jpeg file extensionsContributors
Multi-line Block Quotes
<<<
This is a block quoted paragraph
written in English
<<<
<blockquote class="tc-quote"><p>This is a block quoted paragraph
written in English
</p></blockquote>
Citation
<<<
Computers are like a bicycle for our minds
<<< Steve Jobs
<blockquote class="tc-quote"><p>Computers are like a bicycle for our minds
</p><cite>Steve Jobs</cite></blockquote>
CSS Classes
<<<.myClass.another-class
Operating systems are like a brick wall for our minds
<<< Nobody
<blockquote class="tc-quote myClass another-class"><p>Operating systems are like a brick wall for our minds
</p><cite>Nobody</cite></blockquote>
Single-line Block Quotes
> Quoted text
> Another line of quoted text
<blockquote><p>Quoted text</p><p>Another line of quoted text</p></blockquote>
> A top quote
>> A subquote
> Another top quote* List One
** List Two
**> A quote
**> Another quote
* List Three
<ul><li>List One<ul><li>List Two<blockquote><p>A quote</p><p>Another quote</p></blockquote></li></ul></li><li>List Three</li></ul>
Browser Status Internet Explorer Version 10 and above Chrome All recent versions Firefox All recent versions Firefox for Android All recent versions Safari Version 6 and above Introduction
Content and Attributes
<$browse> widget is ignored.Attribute Description multiple Set to "multiple" to select multiple file upload tooltip Optional tooltip text message Optional override of widget message to be generated. The parameter for the message will be the JavaScript object event.target.files<$browse>--build <대상> [<대상> ...]tiddlywiki.info 파일에 정의되어 있습니다.tiddlywiki/classictools plugin, containing a deserializer module which allows tiddlers to be loaded from TiddlyWiki 2.x.x .recipe filesstripcomments format for the ViewWidget, which strips single line JavaScript comments starting //#stripTitlePrefix='yes' attribute of the FieldsWidget, which removes prefixes wrapped in curly braces from the title attribute{tiddler}HelloThere would be transformed to HelloThereUsage
node ../../tiddlywiki.js \
--verbose \
--load <path_to_recipe_file> \
--rendertiddler $:/core/templates/tiddlywiki2.template.html <path_to_write_index_file> text/plain \
|| exit 1
purpose discard the last N input titlesinput a selection of titles parameter N = an integer, defaulting to 1output all but the last N input titles[list[Days of the Week]butlast[]]
[list[Days of the Week]butlast[2]]
A B C D E F G H I J K L M +[butlast[7]]
Introduction
<button> element that can perform a combination of optional actions when clicked:actions attributeContent and Attributes
<$button> widget is displayed within the button.Attribute Description actions A string containing ActionWidgets to be triggered when the key combination is detected to The title of the tiddler to navigate to message The name of the widget message to send when the button is clicked param The optional parameter to the message set A TextReference to which a new value will be assigned setTo The new value to assign to the TextReference identified in the set attributepopup Title of a state tiddler for a popup that is toggled when the button is clicked aria-label Optional Accessibility label tooltip Optional tooltip class An optional CSS class name to be assigned to the HTML element style An optional CSS style attribute to be assigned to the HTML element selectedClass An optional additional CSS class to be assigned if the popup is triggered or the tiddler specified in set already has the value specified in setTotag An optional html tag to use instead of the default "button" default Default value if set tiddler is missing for testing against setTo to determine selectedClassset attribute, we are referencing the storage location itself, rather than the value stored there, so we do not use curly brackets there. Example: we could code a button widget that sets the caption field of TiddlerA to be the same as that of TiddlerB as:<$button set="TiddlerA!!caption" setTo={{TiddlerB!!caption}} >
Press me!
</$button>tc-btn-invisible tc-tiddlylink to have a button look like an internal link.
changecount will go up by two.Parameters
<<changecount>>
changecount of a different tiddler, use a $tiddler widget:<$tiddler tiddler="Draft of 'New Tiddler'">
<<changecount>>
</$tiddler>
Introduction
Changes to is and addition of all
+ character. For example, [all[shadows+tiddlers]] returns all shadow tiddlers and all ordinary tiddlers.[is[shadow]] at the start of a filter string to select all the shadow tiddlers. In 5.0.9 and above, this will not return all the shadow tiddlers, but instead just those ordinary tiddlers that are also shadow tiddlers (by virtue of having overridden one). The resolution is to use the new all operator. For example, consider this filter from 5.0.8:[is[shadow]!has[draft.of]tag[$:/tags/AdvancedSearch]] [!is[shadow]!has[draft.of]tag[$:/tags/AdvancedSearch]] +[tag[$:/tags/AdvancedSearch]][all[shadows+tiddlers]tag[$:/tags/AdvancedSearch]!has[draft.of]]Changes to
[is[current]][is[current]] now strictly filters from the source tiddlers; so, if the current tiddler is a missing tiddler not in the source list, then [is[current]] will return an empty list.[all[current]] instead. It doesn't read as well, but has the required behaviour of returning just the current tiddler, regardless of whether it is in the source tiddlers.Changes to title and field
[description[Missing]] is equivalent to [field:description[Missing]]).
Introduction
<input type="checkbox"> element that is dynamically bound to either:Content and Attributes
<$checkbox> widget is displayed within an HTML <label> element immediately after the checkbox itself. This means that clicking on the content will toggle the checkbox.Attribute Description tiddler Title of the tiddler to manipulate (defaults to the current tiddler) tag The name of the tag to which the checkbox is bound invertTag When set to yes, flips the tag binding logic so that the absence of the tag causes the checkbox to be checked field The name of the field to which the checkbox is bound index New in 5.1.14 The index of the tiddler, a DataTiddler, to which the checkbox is bound checked The value of the field corresponding to the checkbox being checked unchecked The value of the field corresponding to the checkbox being unchecked default The default value to use if the field is not defined class The class that will be assigned to the label element actions New in 5.1.14 A string containing ActionWidgets to be triggered when the checkbox is clicked Tag Mode
<$checkbox tag="done"> Is it done?</$checkbox>Field Mode
<$checkbox field="status" checked="open" unchecked="closed" default="closed"> Is it open?</$checkbox><br>''status:'' {{!!status}}
status:
Index Mode
<$checkbox tiddler="ExampleData" index=<<currentTiddler>> checked="selected" unchecked="" default=""> Selected?</$checkbox>actions Attributeactions attribute shows both the Action Set Field Widget and Action Send Message Widget to demonstrate two actions.tag. The Action Send Message Widget joins all the tags into one large tag. The Action Set Field Widget appends the tags as individual tags. In this example, the Field Mangler Widget is required for the Action Send Message Widget but not for Action Set Field Widget. Be aware that the action occurs whether you check or uncheck.actions attribute. Alternatively, the attribute can be assigned directly from a variable with actions=<<my-actions>>.<$fieldmangler>
<$set filter="[[Features]] [[Encryption]] +[tags[]]" name="tag">
<$checkbox actions="""<$action-setfield $field="tags" $value=<<tag>> /><$action-sendmessage $message="tm-add-tag" $param=<<tag>> />""" field="checked" checked="YES" unchecked="NO" >
Add tags from tiddlers [[Features]] and [[Encryption]]
</$checkbox>
</$set>
</$fieldmangler>``` to mark code blocks ():
```
This will be monospaced
```
This will be monospaced
This is an ordinary paragraph
```
This will be monospaced
```
This is an ordinary paragraph
```
This will be monospaced
```
Introduction
<pre> and <code> blocks, causing it to be
displayed monospace. A language may optionally be specified using the
language attribute, however syntax highlighting will only be used if the
Highlight Plugin is installed.Content and Attributes
<$codeblock> widget is ignored.Attribute Description code Contents of the block to render as code language Programming language for syntax highlighting language attribute accepts either:text/html or image/svg+xml)Examples
<$codeblock code={{$:/editions/tw5.com/macro-examples/say-hi}} />\define sayhi(name:"Bugs Bunny" address:"Rabbit Hole Hill")
Hi, I'm $name$ and I live in $address$.
\end
<$codeblock code="SELECT * FROM users WHERE deleted = false" language="sql" />SELECT * FROM users WHERE deleted = falseParameters
page-backgroundpage-background: #fe0
table-border: #ccc
...colour macro:<<colour page-background>>Name Value title Typically starting with $:/type application/x-tiddler-dictionarytags $:/tags/Palettedescription Displayed in the palette browser text name: value colour definitionscsvtiddlers macro returns tiddler content in this format.
-- prefix and used as a command-line option to TiddlyWiki on Node.js, indicating which action is desired.
purpose select the titles of all the Node.js commands input ignored parameter none output the command words that can be given to TiddlyWiki on Node.js Leaflet maps plugin by Sylvain Comte
<$leafmap> widget displays an interactive map. Select size, location and zoom, clustering distance, and background. You can display data : geojson, point(s), polygon(s) and/or polyline(s) directly or calling GeoTiddler(s). Tiddler can be called individually, by list or with a filter."Noteself" by Danielo Rodríguez
"Slides and Stories" by Jan
SlidesnStories
MetaTabs
It is inspired by MagicTabs and Tiddlyscholar by Alberto Molina Pérez, which are very elaborated tools that alas do not seem to be in active development any more.
I wanted to change the behaviour in some ways. For example I wanted show tabs only if they have content. ...furthermore there is
"TiddlyWiki Knowledge Network" by Dmitry Sokolov
"Cardo - Task and Project Management Wiki" by David Szego
"TB5 - a pocket full of tips" by Tobias Beer
"TiddlyServer" by Matt Lauber
"Hacks" by Thomas Elmiger
⚠ Warning:
Don't do it this way![[Additional Info|<<currentTiddler>>-Contact]]<<currentTiddler>>-Contact<<currentTiddler>> together with the bit of additional text, -Contact.\define linkup(link) [[Additional Info|$link$-Contact]]⚠ Warning:
Don't do it this way!<<linkup <<currentTiddler>> >><<currentTiddler>> doesn't get rendered, but instead gets passed literally.<$macrocall $name="linkup" link=<<currentTiddler>> />currentVariable then you could write a simple macro, like this:\define linkup() [[Additional Info|$(currentTiddler)$-Contact]]$(variable)$. Since we don't pass an argument, we can invoke it without the <$macrocall> widget more simply, like this:<<linkup>>
$:/core/ui/TiddlerInfo/Tools corresponding to the Tools tab. Other possible values are:
type field gives the content type to apply to the main text field.List of Common Content Types
Group Type Content of type fieldDeveloper Data dictionary application/x-tiddler-dictionary JavaScript code application/javascript JSON data application/json Static stylesheet text/css Image GIF image image/gif ICO format icon file image/x-icon JPEG image image/jpeg PDF image application/pdf PNG image image/png Structured Vector Graphics image image/svg+xml Text HTML markup text/html CSS stylesheet text/css Comma-separated values text/csv Plain text text/plain TiddlyWiki 5 text/vnd.tiddlywiki TiddlyWiki Classic text/x-tiddlywiki Parameters
target is undefined or not a valid colourContributor License Agreement
How to sign the CLA
cla-individual.md or cla-entity.md, with the date in the format (YYYY/MM/DD).Jeremy Ruston, @Jermolene, 2011/11/22Contributing to TiddlyWiki5
Contributor License Agreement
How to sign the CLA
cla-individual.md or cla-entity.md, with the date in the format (YYYY/MM/DD).Jeremy Ruston, @Jermolene, 2011/11/22
purpose count the number of entries in a list input a selection of titles output a new list containing the number of items in the input list as a decimal string Introduction
Content and Attributes
<$count> widget is ignored.Attribute Description filter The filter expression to count .tid)\define renderContent()
{{{ $(exportFilter)$ ||$:/core/templates/plain-text-tiddler}}}
\end
<<renderContent>>exportFilter contains a filter defining which tiddlers should be exported.
Creating tiddlers
Editing tiddlers
Draft mode
text/vnd.tiddlywiki, which means the tiddler contains WikiTextSave, cancel or delete
Introduction
Creating a journal tiddler
Creating a tagged journal tiddler
Customising journal tiddlers
DDth MMM YYYY causes new entries to have titles of the form "10th October 2014"Journal [[Summer vacation]]YYYY-0MM-0DD at 0hhh0mm'0ss'' as the date format.$(currentTiddler)$ somewhere in the title format. This means that if you click new journal here on several different tiddlers, the title of each of those tiddlers will form part of the name of the resulting journal entries.Making a custom new journal button
<$navigator story="MySubStoryList" history="MySubHistoryList">
Click this link to get started: HelloThere
<$list filter="[list[MySubStoryList]]" history="MySubHistoryList">
<div>
! <$button message="tm-close-tiddler" class="tc-btn-invisible">{{$:/core/images/close-button}}</$button> <$view field="title"/>
<$transclude/>
</div>
</$list>
</$navigator>Parameters
quoted-comma-sep{{!!title}} denotes the value of the title field of whatever the current tiddler happens to be. This technique can be used to create general-purpose template tiddlers.currentTiddler variable.$list widget or a template tiddler, there is often no need to explicitly specify a tiddler title.storyTiddler.<$view field=title/>
<$view tiddler=<<currentTiddler>> field=title/>
$list widget changes the current tiddler:<ol>
<$list filter="[prefix[J]]">
<li><<currentTiddler>></li>
</$list>
</ol>
\define searchResults()
<$set name="resultCount" value="""<$count filter="[!is[system]search{$(searchTiddler)$}]"/>""">
{{$:/language/Search/Matches}}
</$set>
<<timeline subfilter:"!is[system]search{$(searchTiddler)$}">>
\end
<<searchResults>>.tid extension, and they can use / or \ as directory separator (when generating the physical path, this is replaced by the correct separator for the platform TiddlyWiki is running on). If none of the filters matches, the logical path is simply the title with all occurences of / replaced by _ (for backwards compatibility).<>:"\|?*^ are replaced by _ in order to guarantee that the resulting path is legal on all supported platforms.Example
[is[system]removeprefix[$:/]addprefix[_system/]]
[tag[task]addprefix[mytasks/]]
[!has[draft.of]]tiddlers/_system (after stripping the $:/ prefix), tiddlers tagged task in a subdirectory tiddlers/mytasks, and also create subdirectory structures for all other non-draft tiddlers.tiddlers/_system/config/FileSystemPaths.tid or tiddlers\_system\config\FileSystemPaths.tid, depending on the platform.[!has[draft.of]] will match all remaining non-draft tiddlers. Because there was a match, any / or \ in the tiddler title is mapped to a path separator. Thus, some/thing/entirely/new will be saved to tiddlers/some/thing/entirely/new.tid (ie, the file new.tid in a directory called entirely).
datauri macro can be used to generate data URIs within TiddlyWiki.
MonthDays contains:oct:31
nov:30
dec:31{{MonthDays##nov}} will resolve to the value 30.MonthDays is a JSONTiddler with the following content:{"oct":31,"nov":30,"dec":31}background: url(<<datauri "Motovun Jack.jpg">>);Parameters
<style>
.jack {
background: url(<$macrocall $name="datauri" title="Motovun Jack.jpg" $output="text/plain"/>);
height: 300px;
}
</style>
<div class="jack"/>
datauri through the $macrocall widget. It needs to prevent the macro's output from being parsed as WikiText, as that would transform the data URI into a $link widget and break the example. If the example was in a CSS tiddler, you could simply write:background: url(<<datauri "Motovun Jack.jpg">>);created and modified.created field of this tiddler has the value 20150117190213631.<$view field="created" format="date" template="DDD DDth MMM YYYY"/>template attribute that allows the format of date values to be specified. The format string is processed with the following substitutions:Token Substituted Value DDDDay of week in full (eg, "Monday") dddShort day of week (eg, "Mon") DDDay of month 0DDAdds a leading zero DDthAdds a suffix WWISO-8601 week number of year 0WWAdds a leading zero MMMMonth in full (eg, "July") mmmShort month (eg, "Jul") MMMonth number 0MMAdds leading zero YYYYFull year YYTwo digit year wYYYYFull year with respect to week number wYYTwo digit year with respect to week number hhHours 0hhAdds a leading zero hh12Hours in 12 hour clock 0hh12Hours in 12 hour clock with leading zero mmMinutes 0mmMinutes with leading zero ssSeconds 0ssSeconds with leading zero am or pmLower case AM/PM indicator AM or PMUpper case AM/PM indicator TZDTimezone offset \xUsed to escape a character that would otherwise have special meaning Examples
Template Output DDth MMM YYYY16th February 2011 DDth MMM \M\M\M YYYY16th February MMM 2011 DDth mmm hh:mm:ss16th Feb 2011 11:38:42 modified and created.
purpose filter the input by date input a selection of titles suffix F = the name of a date field, defaulting to modifiedparameter D = a number of days, defaulting to 0output those input tiddlers in which field F is D days in the { future | past } or any time { before | after } that, including { past | future }, where D is { positive | negative }! outputthose input tiddlers in which field F is at least D days in the { future | past }, where D is { positive | negative }[days[-14]]
[!days:created[-800]]
<ul>
<$list filter="[tag[ReleaseNotes]!<currentTiddler>!sort[modified]]">
<li>
<$link><$view field="title"/></$link><$list filter="[<currentTiddler>days[-120]]"> @@color:red;^^new^^@@</$list>
</li>
</$list>
</ul>
New in 5.1.14
purpose apply HTML decoding to a string input a selection of titles output the input with HTML decoding applied & replaced with & replaced with (non breaking space)< replaced with <> replaced with >" replaced with "
New in 5.1.14
purpose apply URI decoding to a string input a selection of titles output the input with URI decoding applied
New in 5.1.14
purpose apply URI component decoding to a string input a selection of titles output the input with URI component decoding applied
; Term being defined
: Definition of that term
; Another term
: Another definition
<dl><dt>Term being defined</dt><dd>Definition of that term</dd><dt>Another term</dt><dd>Another definition</dd></dl>
application/x-tiddler-dictionary.text field consists of one or more lines of the form name: value.Disabling Plugins
$:/config/Plugins/Disabled/ concatenated with the plugin title, and setting its text to yes.$:/plugins/tiddlywiki/highlight, the title would be:$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/highlightTiddlyWiki is a Tool
TiddlyWiki is a Toolbox
TiddlyWiki is also a Community
Finally, TiddlyWiki is a philosophy
General
Macro Used for Example .def the defining instance of a term widget .em minor emphasis within a sentence not .place a placeholder for the user to fill in tagname.strong major emphasis within a tiddler Important! .word a mention of an ordinary word or phrase "hello world" Advice
Macro Used for Example .tip hints and tips .warning warning advice Blocks
Macro Used for .preamble an introductory sentence that stands apart from the rest of the tiddler Tiddlers and fields
Macro Used for Example .tid a tiddler title Example.tag a tag Example.field a field name example.value a field value example value.op a filter operator backlinks.var a variable or macro name currentTiddler.wid a widget name $list.attr an attribute name filter.param a macro parameter name textLinks
Macro Used for Example .link a link containing WikiText an example.clink a code link <$list>.dlink a link on a defining instance of a term widget .dlink-ex an external link on a defining instance of a term Example .flink a link to a field list.mlink a link to a macro qualify.mlink2 a link to a macro, with specified target foo.olink a link to an operator prefix.olink2 a link to an operator, with specified target foo.vlink a link to a variable currentTiddler.vlink2 a link to a variable, with specified target foo.wlink a link to a widget $button.wlink2 a link to a widget, with specified text foo User interface
Macro Used for Example .key a key on the keyboard Escape .keycombo a key combination Ctrl+Enter Tabs
Macro Used for Example .sidebar-tab the name of a sidebar tab 더 보기 .more-tab the name of a subtab of the More tab 섀도우 .info-tab the name of a tiddler info tab 필드 .controlpanel-tab the name of a Control Panel tab 설정 .advancedsearch-tab the name of an Advanced Search tab 필터 .toc-tab name of the tw5.com TOC tab 목차 .example-tab an example tab name Notes Parameters for .sidebar-tab
Open 열기 Recent 최근 Tools 도구 More 더 보기 Parameters for .more-tab
All 모두 Recent 최근 Tags 태그 Missing 없음 Drafts 초안 Orphans 외톨이 Types 형식 System 시스템 Shadows 섀도우 Parameters for .info-tab
Tools 도구 References 참조 Tagging 태그함 List 목록 Listed 나열됨 Fields 필드 Advanced 고급 Parameters for .controlpanel-tab
Info 정보 Appearance 외관 Settings 설정 Saving 저장 Plugins 플러그인 Parameters for .advancedsearch-tab
Standard 표준 System 시스템 Shadows 섀도우 Filter 필터 Buttons
Macro Used for Example .button a standard button name and icon Parameters for .button
Tiddler toolbar
clone close close-others edit export-tiddler info more-tiddler-actions new-here new-journal-here permalink Edit-mode toolbar
cancel delete save Page toolbar
advanced-search close-all control-panel encryption export-page full-screen home import language more-page-actions new-journal new-tiddler permaview refresh save-wiki storyview tag-manager theme Andrew Becky Clara Daniel and Andrew Barney Clara Daisy is then appended to it, the result is Becky Daniel Andrew Barney Clara Daisy.
draft.of field are treated as pending drafts of the tiddler specified in the field. Draft tiddlers should also have a draft.title field that specifies the title that will be given to the tiddler when it is saved.tm-new-tiddler for creating a new tiddler in draft modetm-edit-tiddler for moving a tiddler into edit mode tm-cancel-tiddler for cancelling a tiddler out of edit modetm-save-tiddler for saving a draft tiddlerIntroduction
Content and Attributes
Display
<div class="tc-dropzone"> to contain its content. During a drag operation the class tc-dragover is added. CSS is used to provide user feedback.Data types supported
Parameters
purpose select one of each group of input titles by field input a selection of titles suffix optionally, list-itemparameter F = the name of a field, defaulting to titleoutput a selection containing the first input title encountered for each distinct value of field FF in the corresponding tiddler is examined.F, it is treated as if the value of the field were empty.[each[color]]
[sort[title]each[type]]
[each:list-item[list]]
each operator to generate a two-tier list of groups and members, see GroupedLists.
purpose select one of each group of input titles by date input a selection of titles parameter F = the name of a date field, defaulting to modifiedoutput a selection containing the first input title encountered for each distinct value (ignoring times of day) of field FF in the corresponding tiddler is examined, and as long as this indicates a date that has not been encountered before, the title is appended to the output.F, it contributes nothing to the output.[eachday[created]]
eachday operator to generate a two-tier list of groups and members, see GroupedLists.
Introduction
Content and Attributes
<$edit-bitmap> widget is ignored.Attribute Description tiddler The tiddler to edit (defaults to the current tiddler) Configuration
(defun open-wiki ()
"Opens a TiddlyWiki directory in Dired."
(interactive)
(dired "~/Dropbox/wiki/tiddlers/"))(defun browse-wiki ()
"Opens TiddlyWiki in the browser."
(interactive)
(browse-url "127.0.0.1:8080/"))(setq browse-url-browser-function 'browse-url-generic
browse-url-generic-program "chromium")(global-set-key (kbd "C-c w") 'open-wiki)modified field.
purpose select the descriptions of the input editions input a selection of edition names parameter none output the description string of each edition in the input Introduction
text field of a tiddler will generates an HTML <textarea> element, i.e. a multi-line editor. Applying the EdiTextWidget to any other field generates an HTML <input type="text"> element, a single-line editor. This behaviour can be overridden with the tag and type attributes.Content and Attributes
<$edit-text> widget is ignored.Attribute Description tiddler The tiddler to edit (defaults to the current tiddler) field The field to edit (defaults to text). Takes precedence over the index attributeindex The index to edit default The default text to be provided when the target tiddler doesn't exist class A CSS class to be assigned to the generated HTML editing element placeholder Placeholder text to be displayed when the edit field is empty focusPopup Title of a state tiddler for a popup that is displayed when the editing element has focus focus Set to "yes" or "true" to automatically focus the editor after creation tag Overrides the generated HTML editing element tag. For a multi-line editor use tag=textarea. For a single-line editor use tag=inputtype Overrides the generated HTML editing element type attributesize The size of the input field (in characters) autoHeight Either "yes" or "no" to specify whether to automatically resize textarea editors to fit their content (defaults to "yes")minHeight Minimum height for automatically resized textarea editors, specified in CSS length units such as "px", "em" or "%"rows Sets the rows attribute of a generated textarea Notes
<$edit-text tiddler="AppSettings" field="myconfig"/>{{ChangeAppSettings}}.<$edit-text tiddler="StoreAppSettings" field="myconfig"/>Introduction
Content and Attributes
<$edit> widget is ignored.Attribute Description tiddler The tiddler to edit (defaults to the current tiddler) field The field to edit (defaults to text). Takes precedence over the index attributeindex The index to edit class A CSS class to be added the generated editing widget
New in 5.1.14
purpose apply HTML encoding to a string input a selection of titles output the input with HTML encoding applied & replaced with &< replaced with <> replaced with >" replaced with "
New in 5.1.14
purpose apply URI encoding to a string input a selection of titles output the input with URI encoding applied
New in 5.1.14
purpose apply URI component encoding to a string input a selection of titles output the input with URI component encoding applied Introduction
Content and Attributes
<$encrypt> widget is ignored.Attribute Description filter Filter defining the tiddlers to be included in the encrypted block. If not specified then all non-system tiddlers are used
purpose select titles from the operand interpreted as a title list input ignored ! inputa selection of titles parameter L = a title listoutput the titles stored as a title list at L! outputthose input titles that are not listed in L<$set name="myList" value="first [[second with a space]] third">
<$list filter="[enlist<myList>]">
...TIDDLYWIKI_PLUGIN_PATH - Search path for ordinary pluginsTIDDLYWIKI_THEME_PATH - Search path for themesTIDDLYWIKI_LANGUAGE_PATH - Search path for languagesTIDDLYWIKI_EDITION_PATH - Search path for editions (used by the InitCommand)publisher/pluginname/<files> while the edition directories contain editionname/<files>TIDDLYWIKI_PLUGIN_PATH=~/MyPluginStore
tiddlywiki mywiki --build index
New in 5.1.14
purpose escape special characters used in regular expressions input a selection of titles output the input with escaping applied to special regular expression characters <$macrocall
$name="toc-tabbed-external-nav"
tag="TableOfContents"
selectedTiddler="$:/temp/toc/selectedTiddler"
unselectedText="<p>Select a topic in the table of contents. Click the arrow to expand a topic.</p>"
missingText="<p>Missing tiddler.</p>"
/><$macrocall
$name="toc-tabbed-internal-nav"
tag="TableOfContents"
selectedTiddler="$:/temp/toc/selectedTiddler"
unselectedText="<p>Select a topic in the table of contents. Click the arrow to expand a topic.</p>"
missingText="<p>Missing tiddler.</p>"
/>TriTarget.org by Devin Weaver
Interactive Git Documentation by Devin Weaver
PESpot Lesson Planner by Patrick Detzner
Simple Zork-like Game by Jed Carty
"PETTIL - Forth for the Commodore PET" by Charlie Hitselberger
Obadiah TOC
"A Thesis Notebook" by Alberto Molina
What is an External Image
Manually Creating External Images
_canonical_uri is spelled URI, not URL.Creating external images under Node.js
--savetiddlers [is[image]] images
--setfield [is[image]] _canonical_uri $:/core/templates/canonical-uri-external-image text/plain
--setfield [is[image]] text "" text/plain
--rendertiddler $:/core/save/all externalimages.html text/plainSaving Separate Image Files
--savetiddlers command can be used to save the images of a wiki into an images subfolder:--savetiddlers [is[image]] imagesExternalising Image Tiddlers
--setfield commands are used: the first sets the _canonical_uri field to a URI derived from the title of the tiddler, and the second clears the text field.--setfield [is[image]] _canonical_uri $:/core/templates/canonical-uri-external-image text/plain
--setfield [is[image]] text "" text/plain<!--
This template is used to assign the ''_canonical_uri'' field to external images.
Change the `./images/` part to a different base URI. The URI can be relative or absolute.
-->
./images/<$view field="title" format="doubleurlencoded"/>
Using External Images
--fetch file <url> <import-filter> <transform-filter>
--fetch files <url-filter> <import-filter> <transform-filter>[tag[remote-server]get[url]] will retrieve all the available URLs.<import-filter> parameter specifies a filter determining which tiddlers are imported. It defaults to [all[tiddlers]] if not provided.<transform-filter> parameter specifies an optional filter that transforms the titles of the imported tiddlers. For example, [addprefix[$:/myimports/]] would add the prefix $:/myimports/ to each title.--fetch command with --verbose will output progress information during the import.tiddlywiki --verbose --fetch file "http://tiddlywiki.com/" "[!is[system]]" "" --rendertiddler "$:/core/templates/exporters/JsonFile" output.json text/plain "" exportFilter "[!is[system]]"
purpose filter the input by field input a selection of titles suffix F = the name of a fieldparameter S = a possible value of field Foutput those input tiddlers in which field F has the value S! outputthose input tiddlers in which field F does not have the value SS is empty, field will match both of the following:FF exists but has an empty valuefield operator. See the examples.
<$fieldmangler>
Add tag ''example'' to this tiddler (current)<$button message="tm-add-tag" param="example">{{$:/core/images/new-button}}</$button>
<br>
Remove tag ''example'' to this tiddler (current)<$button message="tm-remove-tag" param="example">{{$:/core/images/delete-button}}</$button>
</$fieldmangler>
Introduction
Message Description tm-remove-field Remove the field specified in event.paramtm-add-field Add the field specified in event.paramtm-remove-tag Remove the tag specified in event.paramtm-add-tag Add the tag specified in event.paramContent and Attributes
Attribute Description tiddler Title of the tiddler to manipulate (defaults to the current tiddler)
purpose select all field names of the input titles input a selection of titles parameter none output all the field names contained in the input tiddlers Introduction
Template Handling
Symbol Substitution $name$ Field name $value$ Field value $encoded_value$ HTML encoded form of field value Content and Attributes
<$fields> widget is ignored.Attribute Description tiddler Title of the tiddler from which the fields are to be displayed (defaults to the current tiddler) template Text of the template (see above) exclude Lists of fields to be excluded (defaults to "text") stripTitlePrefix If set to "yes" then curly bracketed prefixes are removed from titles (for example {prefix}HelloThere converts to HelloThere)stripTitlePrefix attribute is used when building TiddlyWiki Classic; see editions/tw2 in the TiddlyWiki5 repo.
+ prefix can change this.+ or - prefix, its output titles are dominantly appended to the filter's output.- prefix, its output titles are removed from the filter's output (if they were present).+ prefix, it receives the filter's output so far as its input. The filter's output is then completely replaced by the run's output. Any subsequent run reverts to receiving all tiddler titles as its input, unless it too has a + prefix.Run Interpretation Output rununion of sets ... OR run +runintersection of sets ... AND run -rundifference of sets ... AND NOT run ! prefix. For specifics as to each operator's negated output please refer to its documentation.
Operator
Purpose
✓
!
all
find all titles of a fundamental category
✓
backlinks
find the titles that link to each input title
count
count the number of entries in a list
days
filter the input by date
!
each
select one of each group of input titles by field
eachday
select one of each group of input titles by date
enlist
select titles from the operand interpreted as a title list
!
field
filter the input by field
✓
!
fields
select all field names of the input titles
get
select all values of a field in the input titles
getindex
has
filter the input by field existence
✓
!
haschanged
filter the input by tiddler modification status
!
indexes
select all data properties of the input titles
is
filter the input by fundamental category
✓
!
links
find the titles linked to by each input title
✓
list
select titles via a list field
!
listed
find the titles that list the input titles
minlength
filter items shorter than the specified minimum length
regexp
filter the input by pattern-matched field
!
sameday
filter the input by date
search
filter the input by searching tiddler content
✓
!
title
select a single title
✓
!Order Operators
after
find which input title follows a specified one
before
find which input title precedes a specified one
bf
same as
rest
butfirst
same as
rest
butlast
discard the last
N input titles
first
select the first
N input titles
last
select the last
N input titles
limit
select the first or last
N input titles✓
!
next
find which titles in a
list field follow the input ones
nsort
sort the input by number field
!
nsortcs
sort the input titles by number field, treating upper and lower case as different
!
nth
select the
Nth input title
order
selectively reverse the input list
✓
previous
find which titles in a
list field precede the input ones
rest
discard the first
N input titles
reverse
reverse the order of the input titles
sort
sort the input by text field
✓
!
sortcs
sort the input by text field, treating upper and lower case as different
!Listops Operators
allafter
discard all items except those after the marker
allbefore
discard all items except those before the marker
append
append a range of items from an array to the list
move
move marker N places in the list
prepend
prepend a range of items from an array to the list
putafter
move N trailing items after the marker
putbefore
move N trailing items before the marker
putfirst
move N trailing items to the head of the list
putlast
move N leading items to the tail of the list
remove
remove a list of titles specified in the operand from the input
replace
replace marker with N trailing items
sortby
sort the current list in the order of the list referenced in the operand
String Operators
addprefix
extend each input title with a prefix
addsuffix
extend each input title with a suffix
decodehtml
apply HTML decoding to a string
decodeuri
apply URI decoding to a string
decodeuricomponent
apply URI component decoding to a string
encodehtml
apply HTML encoding to a string
encodeuri
apply URI encoding to a string
encodeuricomponent
apply URI component encoding to a string
escaperegexp
escape special characters used in regular expressions
prefix
filter the input titles by how they start
!
removeprefix
filter the input titles by how they start, deleting that prefix
removesuffix
filter the input titles by how they end, deleting that suffix
splitbefore
select a delimited prefix from each input title
stringify
apply JavaScript string encoding to a string
suffix
filter the input titles by how they end
!Tag Operators
tag
filter the input by tag
✓
!
tagging
find the tiddlers that have the input tags
tags
select all tags of the input tiddlers
untagged
discard any input titles that have tags
!Special Operators
commands
select the titles of all the Node.js commands
editiondescription
select the descriptions of the input editions
editions
select the names of all the TiddlyWiki editions
modules
select the names of all modules of the input module types
moduletypes
select the names of all TiddlyWiki module types
plugintiddlers
select all shadow titles in the input plugins
shadowsource
select the plugin titles that contain the input shadows
storyviews
select the names of all the story views
[operator[parameter]], although not all of the operators need a parameter.[like this]{like this}<like this>title. The output of [title[A]title[B]] is just B. But the field operator is a modifier, so [title[A]field:title[B] outputs nothing at all.
HelloThere, "HelloThere", 'HelloThere' and "Filter Operators". They are short for [title[...]]."An [[[[Unusual]]]] Tiddler".
field operator. If a step's operator is omitted altogether, it defaults to title.list-links macro to display a list of all tiddlers whose titles start with the letter H:<<list-links "[prefix[H]]">>
purpose select the first N input titlesinput a selection of titles parameter N = an integer, defaulting to 1output the first N input titles[list[Days of the Week]first[]]
[list[Days of the Week]first[5]]
[tag[Filter Operators]!sort[title]first[]]
`backticks` for code ()``double backticks allows `embedded` backticks``''bold'' for bold text ()//italic// for italic text ()__underscore__ for underscored text ()^^superscript^^ for superscripted text (),,subscript,, for subscripted text ()~~strikethrough~~ for strikethrough text ()<$list> widget to be formatted in the form of multiple columns instead of just one straight listing. The following method creates an actual table structure and uses the nth operator to provide break points for the rows. It is not responsive, that is, it doesn't re-position to display fewer columns if the window is too small.<$list> widget. Obviously this technique lends itself to a macro implementation.Example code for a four-column table with fewer than 70 items
<table>
<$list filter="1 5 9 13 17 21 25 29 33 37 41 45 49 53 57 61 65" variable ="rows">
<$list filter="[tag[Filter Operators]limit[50]] +[nth<rows>]" variable="cell">
<tr>
<td> <<cell>> </td>
<$list filter="[tag[Filter Operators]limit[50]] +[allafter<cell>limit[3]]" variable="this">
<td> <<this>> </td>
</$list>
</tr>
</$list>
</$list>
</table>Result
enlist Operator
addprefix Operator
addsuffix Operator
after Operator
all Operator
allafter Operator
allbefore Operator
append Operator
backlinks Operator
before Operator
bf Operator
butfirst Operator
butlast Operator
commands Operator
count Operator
days Operator
decodehtml Operator
decodeuri Operator
decodeuricomponent Operator
each Operator
eachday Operator
editiondescription Operator
editions Operator
encodehtml Operator
encodeuri Operator
encodeuricomponent Operator
escaperegexp Operator
field Operator
fields Operator
first Operator
get Operator
getindex Operator
has Operator
haschanged Operator
indexes Operator
is Operator
last Operator
limit Operator
links Operator
list Operator
listed Operator
minlength Operator
modules Operator
moduletypes Operator
move Operator
next Operator
nsort Operator
nsortcs Operator
nth Operator
order Operator
<$list> widget to be formatted in the form of multiple columns, instead of just one straight listing. This method uses ~CSS to set up listing as columns and assumes that you know how many columns you want. The method here is to create a style that reflects the number of columns you want your table to be in, and then apply that style to the resulting list output.1) Create a tiddler for the columns tagged with
$:/tags/Stylesheet, containing:/* FOUR COLUMN MODE */
.fourcolumns {
display:block;
-moz-column-count:4;
-moz-column-gap:1em;
-webkit-column-count: 4;
-webkit-column-gap:1em;
}2) Then format your output like this:
@@.fourcolumns
<$list filter="[tag[Filter Operators]]" variable="foo"><br>
<<foo>>
</$list>
@@Example showing partial list of filter operators
enlist Operator
addprefix Operator
addsuffix Operator
after Operator
all Operator
allafter Operator
allbefore Operator
append Operator
backlinks Operator
before Operator
bf Operator
butfirst Operator
butlast Operator
commands Operator
count Operator
days Operator
decodehtml Operator
decodeuri Operator
decodeuricomponent Operator
each Operator
eachday Operator
editiondescription Operator
editions Operator
encodehtml Operator
<$list> widget to be formatted in the form of multiple columns, instead of just one straight listing. This method uses CSS to set up listing as columns. It is responsive, that is, re-positioning to display fewer columns if the window is too small.Example listing using 50 existing TiddlyWiki tags
<div class="dynamic-table">
<$list filter="[has[tags]tags[]sort[title]first[50]]">
<span class="item">
<$transclude tiddler="$:/core/ui/TagTemplate"/>
</span>
</$list>
</div>Example stylesheet to use with listing
<style>
.dynamic-table {
max-width:700px; /* could transclude tiddler width instead */
-ms-box-orient: vertical; /* might be unnecessary */
display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -moz-flex;
display: -webkit-flex;
display: inline-flex;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
flex-direction: row;
}
.item {
max-width:160px; min-width:160px;
flex: 0 0 2em; /* -grow, -shrink, -basis */
}
</style>Results
Simple Formatting
The ''quick'' brown ~~flea~~ fox //jumps// over the `lazy` dogflea fox jumps over the lazy dogWorking with Tiddlers
This is a link to HelloThere, and one to [[History of TiddlyWiki]]Macros
\define youtube(video)
https://www.youtube.com/watch?v=$video$
\end<<youtube 1g66s7UbyuU>> generates the URL https://www.youtube.com/watch?v=1g66s7UbyuUAdvanced WikiText
Find out more
Users
Developers
Documentation
Wiki Snapshots and Tiddler Snapshots
/static/HelloThere.html that point to static snapshots of individual tiddlers. The tiddler HTML files reference a static.css stylesheet file.--rendertiddlers [!is[system]] $:/core/templates/static.tiddler.html static text/plain
--rendertiddler $:/core/templates/static.template.html static.html text/plain
--rendertiddler $:/core/templates/static.template.css static/static.css text/plainoutput folder of the wiki folder).Wiki Snapshot with Internal Links
--rendertiddler $:/core/templates/alltiddlers.template.html alltiddlers.html text/plain
purpose select all values of a field in the input titles input a selection of titles parameter F = the name of a fieldoutput the values of field F in each of the input titlesF, and the value of this field is not empty, then its value is appended to the output.get can contain duplicates. To avoid duplicates, use each[F]get[F].
P, the value of that property is dominantly appended to the output.[[$:/palettes/Vanilla]getindex[background]]
[tag[$:/tags/Palette]getindex[background]]
Using Firefox and TiddlyFox
Using the AndTidWiki App
/sdcard/andtidwiki.html or .htm extensionUsing Node.js in Termux
.html or .htm extension.html or .htm extension.html or .htm extensionhttp://tiddlywiki.com/empty.html.html)apt-get install nodejs on Debian/Ubuntu Linux or Termux for Android, or brew install node on a Macnpm install -g tiddlywikisudo npm install -g tiddlywiki (Mac/Linux)tiddlywiki --versiontiddlywiki mynewwiki --init server to create a folder for a new wiki that includes server-related componentstiddlywiki mynewwiki --server to start TiddlyWikitiddlywiki --build index-g flag causes TiddlyWiki to be installed globally. Without it, TiddlyWiki will only be available in the directory where you installed it.node: command not found error though node.js package is installed, you may need to create a symbolic link between nodejs and node. Consult your distro's manual and whereis to correctly create a link. See github issue 1434sudo ln -s /usr/bin/nodejs /usr/bin/node
.html or .htm extensionServers
Existing Wikis
Free Hosting
box.com, swissdisk.com) support accessing HTML files via a webbrowser, so they won't work with TiddlyWiki. Maybe someday soon there will be a free WebDAV hosting service for TiddlyWikis.
Types Tab
type field. The inner list filter selects all the (non-system) tiddlers with that type.<$list filter={{$:/core/Filters/TypedTiddlers!!filter}}>
<div class="tc-menu-list-item">
<$view field="type"/>
<$list filter="[type{!!type}!is[system]sort[title]]">
<div class="tc-menu-list-subitem">
<$link to={{!!title}}><$view field="title"/></$link>
</div>
</$list>
</div>
</$list>
Recent Tab
timeline macro. Here, the outer list filter selects each discrete day found in the modified field, while the inner list filter selects all the tiddlers dated the same day in the modified field.\define timeline-title()
<!-- Override this macro with a global macro
of the same name if you need to change
how titles are displayed on the timeline
-->
<$view field="title"/>
\end
\define timeline(limit:"100",format:"DDth MMM YYYY",subfilter:"",dateField:"modified")
<div class="tc-timeline">
<$list filter="[!is[system]$subfilter$has[$dateField$]!sort[$dateField$]limit[$limit$]eachday[$dateField$]]">
<div class="tc-menu-list-item">
<$view field="$dateField$" format="date" template="$format$"/>
<$list filter="[sameday:$dateField${!!$dateField$}!is[system]$subfilter$!sort[$dateField$]]">
<div class="tc-menu-list-subitem">
<$link to={{!!title}}>
<<timeline-title>>
</$link>
</div>
</$list>
</div>
</$list>
</div>
\end
to attribute is a transclusion, macro or variable"""
This is a line
and this is a new line
while this is yet another line
and this is the final one
apart from this one
"""
and this is a new line
while this is yet another line
and this is the final one
apart from this one<p>This is a line<br>and this is a new line<br>while this is yet another line<br>and this is the final one<br>apart from this one<br></p>
purpose filter the input by field existence input a selection of titles suffix F = New in 5.1.14 optionally, the name of a fieldparameter F = the name of a fieldoutput without suffix or with suffix value
» those input tiddlers in which field F has a non-empty value
suffix field
» those input tiddlers in which field F does not exist! outputwithout suffix or with suffix value
» those input tiddlers in which field F does not exist or has an empty value
suffix field
» those input tiddlers in which field F exists
purpose filter the input by tiddler modification status input a selection of titles parameter none output those input tiddlers that have been modified during this session ! outputthose input tiddlers that have not been modified during this session
Teach and Tell
Help improve the documentation and code
Origins of TiddlyWiki
Launch of TiddlyWiki
file:// URI.Growth of TiddlyWiki
BT Acquisition
Osmosoft and TiddlySpace
Leaving BT
Development of TiddlyWiki5
The Future
<$list filter="[list[$:/StoryList]]" history="$:/HistoryList" storyview="pop">
<$button message="tm-close-tiddler" class="tc-btn-invisible tc-btn-mini">×</$button> <$link to={{!!title}}><$view field="title"/> <$reveal type="match" state="$:/HistoryList!!current-tiddler" text=<<currentTiddler>>>✓</$reveal></$link>
</$list>Empty Story
{{GettingStarted||$:/core/ui/ViewTemplate}}tiddlywiki.info file in your WikiFolder: "config": {
"retain-original-tiddler-path": true
}caption fieldlist-after or list-before fields as discussed in Tagginglist-after to $:/core/ui/SideBar/Open to place a sidebar tab immediately after the "Open" tab$:/tags/MoreSideBar.
tc-tagged-<Tag Name>.tc-tagged-NightReader like this:.tc-tagged-NightReader {
background-color:black;
color: orange;
padding: 35px 35px;
}
.tc-tagged-NightReader .tc-tiddler-body {
font-size: 1.5em;
}tc-tagged-NightReader class is applied to the entire tiddler and not just the tiddler text. If you want to target a smaller portion of the tiddler you can qualify the CSS selector, as is done here with .tc-tagged-NightReader .tc-tiddler-body.Tag Generated Class Name $:/mytagtc-tagged-%24%3A%2FmytagDoctor Whotc-tagged-Doctor%20Who£35.23tc-tagged-%C2%A335.23.tc-tagged-Doctor\%20Who {
background-image: url(./tardis_back.svg);
background-repeat: no-repeat;
background-position: right;
color:#FBFBFB;
}$tw.utils.tagToCssSelector("$:/tags/Stylesheet")tc-tagged-\%24\%3A\%2Ftags\%2FStylesheet~/MyWiki)tiddlywiki.info containing the following text:{"themes": ["tiddlywiki/vanilla","tiddlywiki/snowwhite"]}tiddlerseditions/empty folder from the TiddlyWiki5 repo~/MyWiki/tiddlers directorytiddlywiki ~/MyWiki --rendertiddler $:/core/save/all index.html text/plain<<toc-selective-expandable "TableOfContents" "sort[title]" >>Journal to be sorted by the created field. How can you apply a separate sort order to just those sub-items tagged Journal?Journal) that points to a different sort criteria. Let's call the field fuzzy, and populate it with the value created (created is the name of the field that contains a tiddler's creation date).<<toc-selective-expandable "TableOfContents" "sort{fuzzy}" >>Journal tiddler, which will sort by the created date.Note about embedding versus external linking
[ext[title|path/to/that.file]] node.js with method #2 below to quickly file paths.Two ways to embed a PDF in your TW5 file.
1. Embedding with Drag and Drop
2. Embedding with '_canonical_uri'
{{My Image File.jpg}} transclusion syntax just like an embedded file. The location address of the file can also be changed under node.js. See ExternalImages for details of using external images with node.js._canonical_uri. Put in the local address to the external file. Set the type field to application/pdf.Other File Types
Selecting All tiddlers for export
Exporting a tiddler
Exporting tiddlers matching a criteria (filter)
Export formats
".tid" format is unique from the other formats in that only one tiddler will be exported, even if you are attempting to export all tiddlers or a selection of tiddlers.
<div class="github-fork-ribbon-wrapper right">
<div class="github-fork-ribbon" style="background-color:#DF4848;">
<$list filter="[!is[system]!has[draft.of]!sort[modified]limit[1]]">
<$link>
<$view field="modified" format="date" template="DD mmm YYYY at 0hh:0mm"/>
</$link>
</$list>
</div>
</div>right to right-bottomleftTurning off Camel Case locally
~CamelCaseTurning off Camel Case globally
Settings tab and then scroll or read down to the Camel Case Wiki Links section and unselect Enable automatic CamelCase linking.<article class="hello">
This is my nice and simple block of text. HelloThere
<!-- This comment will not appear in the wikified output -->
</article>Content Parsing
Attributes
Literal Attribute Values
attr='value')attr="value")attr="""value""")attr=value)<div data-address="Mouse House,
Mouse Lane,
Rodentville,
Ratland."/><div data-address="""Mouse House,
"Mouse" Lane,
Rodentville,
Ratland."""/>Transcluded Attribute Values
attr={{tiddler}}
attr={{!!field}}
attr={{tiddler!!field}}Variable Attribute Values
<div title=<<MyMacro "Brian">>>
...
</div>Filtered Attribute Values
<$text text={{{ [<currentTiddler>]addPrefix[$:/myprefix/]] }}}>href attribute will be set to the value of the tiddler MyLinkDestination:<a href={{MyLinkDestination}}>link</a>rel attribute set to noopener noreferrer to maintain privacy of the URLs of private TiddlyWiki's (eg on Dropbox). See https://mathiasbynens.github.io/rel-noopener/ for more information.<a href={{MyLinkDestination}} rel="noopener noreferrer">link</a>Parameters
imageTitle contains the title of the tiddler containing the selected image.tag[MyTag]subfilter parameter is spliced as follows:[all[shadows+tiddlers]is[image]$subfilter$!has[draft.of]] -[type[application/pdf]] +[sort[title]]Image: <$edit-text tiddler='$:/_MyImage' tag='input' placeholder='(unset)' default=''/>
<$transclude tiddler={{$:/_MyImage}}/>
---
<$macrocall $name='image-picker' actions="
<$action-setfield $tiddler='$:/_MyImage' $value=<<imageTitle>>/>
"/>
subfilter parameter limits the list of images (here to those with the "Language" prefix):Image: <$edit-text tiddler='$:/_MyImage' tag='input' placeholder='(unset)' default=''/>
<$transclude tiddler={{$:/_MyImage}}/>
---
<$macrocall $name='image-picker' actions="
<$action-setfield $tiddler='$:/_MyImage' $value=<<imageTitle>>/>
" subfilter="prefix[Language]"/>
Image Formatting
[img[Motovun Jack.jpg]]
[img[http://tiddlywiki.com/favicon.ico]]<img> tag is generated with the src attribute containing the URL.[img[An explanatory tooltip|Motovun Jack.jpg]][img width=32 [Motovun Jack.jpg]]
[img width=32 class="tc-image" [Motovun Jack.jpg]][img width={{!!mywidth}} class=<<image-classes>> [Motovun Jack.jpg]]Displaying Images via Transclusion
{{Motovun Jack.jpg}}Introduction
Content and Attributes
<$image> widget is ignored.Attribute Description source The URL of the image, or the title of an image tiddler width The width of the image height The height of the image tooltip The tooltip to be displayed over the image alt The alternative text to be associated with the image class CSS classes to be assigned to the <img> elementExternal Images and the _canonical_uri field
<img> element and the text field is ignored<img> element that embeds the image data directly using a data: URI.Introduction
<$importvariables filter="[tag[mySpecialMacros]]">
All the macros defined in tiddlers with the tag "mySpecialMacros" are available here
</$importvariables>Attributes and Content
Attribute Description filter Tiddler filter defining the tiddlers from which macro definitions will be imported Global Macros
<$importvariables filter="[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]">
...
</$importvariables>
purpose select all data properties of the input titles input a selection of titles parameter none output all the property names or indices contained in the input data tiddlers indexes operator retrieves a selection of integer indices instead.$:/info/ are used to expose information about the system (including the current browser) so that WikiText applications can adapt themselves to available features.Information Tiddlers
Title Description $:/info/browser Running in the browser? ("yes" or "no") $:/info/node Running under Node.js? ("yes" or "no") $:/info/url/full New in 5.1.14 Full URL of wiki (eg, ) $:/info/url/host New in 5.1.14 Host portion of URL of wiki (eg, ) $:/info/url/hostname New in 5.1.14 Hostname portion of URL of wiki (eg, ) $:/info/url/origin New in 5.1.14 Origin portion of URL of wiki (eg, ) $:/info/url/pathname New in 5.1.14 Pathname portion of URL of wiki (eg, ) $:/info/url/port New in 5.1.14 Port portion of URL of wiki (eg, ) $:/info/url/protocol New in 5.1.14 Protocol portion of URL of wiki (eg, ) $:/info/url/search New in 5.1.14 Search portion of URL of wiki (eg, ) --init <에디션> [<에디션> ...]tiddlywiki ./MyWikiFolder --init emptytiddlywiki.info 파일에 정의된 모든 includeWikis를 제거합니다tiddlywiki.info 파일은 마지막 에디션에서 복사됩니다)--editions는 사용할 수 있는 에디션의 목록을 반환합니다Standalone Configuration
Client-Server Configuration
$:/plugins/tiddlywiki/internals is referred to as tiddlywiki/internalstiddlywiki.info file (it is in JSON format) and locate the plugins and themes section (see below){
"plugins": [
"tiddlywiki/codemirror"
],
"themes": [
"tiddlywiki/vanilla",
"tiddlywiki/snowwhite"
]
}apt-get install nodejs on Debian/Ubuntu Linux or Termux for Android, or brew install node on a Macnpm install -g tiddlywikisudo npm install -g tiddlywiki (Mac/Linux)tiddlywiki --versiontiddlywiki mynewwiki --init server to create a folder for a new wiki that includes server-related componentstiddlywiki mynewwiki --server to start TiddlyWikitiddlywiki --build index-g flag causes TiddlyWiki to be installed globally. Without it, TiddlyWiki will only be available in the directory where you installed it.node: command not found error though node.js package is installed, you may need to create a symbolic link between nodejs and node. Consult your distro's manual and whereis to correctly create a link. See github issue 1434sudo ln -s /usr/bin/nodejs /usr/bin/node
npm link (Windows) or sudo npm link (Mac/Linux) to tell npm to use this copy of the repo as the globally installed onetiddlywiki editions/tw5.com-server --server 8080 $:/core/save/all text/plain text/htmlnpm install -g tiddlywiki.[[Recipe book]] [[ScrambledEggs]] [[Mom's apple pie]][[Recipe book]] ScrambledEggs [[Mom's apple pie]][title[ScrambledEggs]][operator[parameter]]Recipe:[tag[Recipe]]! just before the operator. For example, we can select any tiddlers that do not have the Recipe tag:[!tag[Recipe]][field:serving[4]]4 in their serving field.field: prefix:[serving[4]]Combinations
[tag[Vegetarian]!tag[soup]serving[4]][serving[3]] [serving[4]] [serving[5]][serving[3]] [serving[4]!tag[Vegetarian]] [serving[5]]+ sign to force a run to consider only the tiddlers that were selected by the preceding runs:[serving[3]] [serving[4]] [serving[5]] +[tag[Vegetarian]] +[sort[title]]- sign to remove a run's tiddlers from the result so far. Here we select all vegetarian recipes apart from two:[tag[Vegetarian]] -[title[ScrambledEggs]] -BeansOnToastSpecial parameters
{} mean that the parameter is a TextReference, and that its value is to be looked up in a specified tiddler. For example, if we have a tiddler called Preference whose text happens to be the word Vegetarian, we can say[tag{Preference}][tag[Vegetarian]]. This allows the preference to change over time.<> mean that the parameter is the name of a variable whose value is to be used instead. Here we use the built-in currentTiddler variable in a filter that selects any tiddlers whose text contains the title of the current one:[search<currentTiddler>]
purpose filter the input by fundamental category input a selection of titles parameter C = a categoryoutput those input tiddlers that belong to category C! outputthose input tiddlers that do not belong to category CC is one of the following fundamental categories:Category Matches any tiddler that... currentis the current tiddler imagehas an image ContentType missingdoes not exist (other than possibly as a shadow tiddler), regardless of whether there are any links it orphanhas no hard links to it shadowis a shadow tiddler, regardless of whether it has been overridden with a non-shadow tiddler systemis a system tiddler, i.e. its title starts with $:/tagis in use as a tag tiddlerexists as a non-shadow tiddler C is anything else an error message is returned. New in 5.1.14 is blank, the output is passed through unchanged (in earlier versions an error message was returned).!is[tiddler] is a synonym for is[missing], and vice versa.is[missing] is the first operator in a run, its output is always empty. And when is[shadow] comes first, it outputs only those shadow tiddlers that have been overridden. This is because the initial input to a run contains only non-shadow tiddlers.all operator is similar, but its scope is the whole wiki.[is[tag]]
[!is[tag]]
[all[shadows]!is[system]]
$:/
[is[system]tag[$:/tags/Stylesheet]]
[all[shadows]is[system]tag[$:/tags/Stylesheet]]
[is[shadow]]
[is[missing]]
function circleArea(radius) {
return radius * 2 * 3.141592653;
}jsontiddlers macro returns tiddler content in JSON format.
text field.application/json.Parameters
Special Keys
Introduction
message and param attributes.Content and Attributes
<$keyboard> widget is rendered normally. The keyboard shortcuts only take effect when the focus is within the contained content.Attribute Description actions A string containing ActionWidgets to be triggered when the key combination is detected message The title of the WidgetMessage to generate param The parameter to be passed with the WidgetMessage key Key string identifying the key(s) to be trapped (see below) class A CSS class to be assigned to the generated HTML DIV element tag New in 5.1.14 The html element the widget creates to capture the keyboard event, defaults to:
» span when parsed in inline-mode
» div when parsed in block-modeKey Strings
A
shift+A
shift+escape
ctrl+enter
ctrl+shift+alt+A
Language Plugins
Language Editions
purpose select the last N input titlesinput a selection of titles parameter N = an integer, defaulting to 1output the last N input titles[list[Days of the Week]last[]]
[list[Days of the Week]last[5]]
[tag[Concepts]!sort[title]last[3]]
Leaflet maps plugin by Sylvain Comte
<$leafmap> widget displays an interactive map. Select size, location and zoom, clustering distance, and background. You can display data : geojson, point(s), polygon(s) and/or polyline(s) directly or calling GeoTiddler(s). Tiddler can be called individually, by list or with a filter."Noteself" by Danielo Rodríguez
"Slides and Stories" by Jan
SlidesnStories
MetaTabs
It is inspired by MagicTabs and Tiddlyscholar by Alberto Molina Pérez, which are very elaborated tools that alas do not seem to be in active development any more.
I wanted to change the behaviour in some ways. For example I wanted show tabs only if they have content. ...furthermore there is
"TiddlyWiki Knowledge Network" by Dmitry Sokolov
"Cardo - Task and Project Management Wiki" by David Szego
"TB5 - a pocket full of tips" by Tobias Beer
"TiddlyServer" by Matt Lauber
"Hacks" by Thomas Elmiger
Lazy loading under Node.js
tiddlywiki --server 8080 $:/core/save/lazy-imagestiddlywiki --server 8080 $:/core/save/lazy-allLazy loading under TiddlyWeb
<$leafmap> widget displays an interactive map. Select size, location and zoom, clustering distance, and background. You can display data : geojson, point(s), polygon(s) and/or polyline(s) directly or calling GeoTiddler(s). Tiddler can be called individually, by list or with a filter.
TiddlyWiki created by Jeremy Ruston, (jeremy [at] jermolene [dot] com)
Copyright (c) 2004-2007, Jeremy Ruston
Copyright (c) 2007-2017, UnaMesa Association
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
purpose select the first or last N input titlesinput a selection of titles parameter N = an integer, defaulting to 0output the first N input titles! outputthe last N input titleslimit[N] and !limit[N] are synonyms for first[N] and last[N] respectively.$:/language/.Parameters
$:/language/ is added automatically<<lingo DefaultNewTiddlerTitle>>
<<lingo Date/Long/Month/8>>
Introduction
Content and Attributes
<$linkcatcher> widget is displayed normally.Attribute Description to Optional title of the tiddler to be set to the title of the navigated tiddler message Optional identifier for a widget message to be sent when a navigation is caught set Optional title of the tiddler to be set to a specified value when navigation occurs setTo Value to be assigned by the set attributeManual Links
[[Tiddler Title]][[Displayed Link Title|Tiddler Title]]CamelCase Links
~. For example:* ~HelloThere is not a link
* ~http://google.com/ is not a link<ul><li>HelloThere is not a link</li><li>http://google.com/ is not a link</li></ul>
External Links
http://, file://) or mailto:http://tiddlywiki.com/
[[TW5|http://tiddlywiki.com/]]
[[Mail me|mailto:me@where.net]][ext[Open file|index.html]]
[ext[Open file|./index.html]]
[ext[Open file|../README.md]][ext[http://tiddlywiki.com]]
[ext[TW5|http://tiddlywiki.com]][ext[Donate|bitcoin:1aabbdd....?amount=0.001]]Customising Tiddler Links
purpose find the titles linked to by each input title input a selection of titles parameter none output the titles to which the input tiddlers contain hard links [[HelloThere]links[]]
link widget generates links to tiddlers. (Use the HTML <a> element to generate external links).Content and Attributes
Attribute Description to The title of the target tiddler for the link (defaults to the current tiddler) aria-label Optional Accessibility label tooltip Optional tooltip WikiText tabindex Optional numeric tabindex draggable "yes" to enable the link to be draggable (defaults to "yes") tag Optional tag to override the default "a" element <a> tag.tv-wikilink-tooltip variable.<$link to="HelloThere" tooltip="Custom tooltip">Link 1</$link>
<$set name="tv-wikilink-tooltip" value="I'm a link to {{!!title}}">
<$link to="HelloThere">Link 2</$link>
</$set>
\define tv-wikilink-tooltip()
<$transclude field="tooltip"><$transclude field="title"/></$transclude>
\endCSS Classes
tc-tiddlylink - applied to all linkstc-tiddlylink-external - applied to external, non-tiddler linkstc-tiddlylink-internal - applied to tiddler linkstc-tiddlylink-missing - applied to tiddler links where the target tiddler doesn't existtc-tiddlylink-resolves - applied to tiddler links when the target tiddler does existConfiguration variables
purpose select titles via a list field input ignored ! inputa selection of titles parameter R = a reference to a field or property of a particular tiddleroutput the titles stored as a title list at R! outputthose input titles that are not mentioned at RR can reference either a field or a property. See TextReference for the syntax.list field is used by default. So [list[T]] outputs the titles listed in the list of tiddler T.R consists of only a field or a property, the tiddler part of the reference defaults to the current tiddler. So [list[!!tags]] outputs the titles listed in the tags field of the current tiddler.[list[HelloThere]]
[list[Days of the Week!!short]]
caption field, this is shown instead of the tiddler's title.Parameters
purpose find the titles that list the input titles input a selection of titles parameter F = the name of a field, defaulting to listoutput the titles in which field F mentions any of the input titlesF is assumed to be a title list.F field mentions it is generated (in no particular order) and dominantly appended to the operator's overall output.list field of a tiddler is an optional feature that can be used to help structure your content. Its value is a title list, and it can be used in several ways:list field of a tiddler that is being used as a tag determines the ordering of the tiddlers that carry that tag - see Tagging for detailslist filter selects the entries from a listlisted filter selects the tiddlers that list the selected tiddler(s)list field of the tiddlers that are displayed in the main story columnBulleted Lists
* characters ():* First list item
* Second list item
** A subitem
* Third list item
<ul><li>First list item</li><li>Second list item<ul><li>A subitem</li></ul></li><li>Third list item</li></ul>
Numbered Lists
# instead of * ():* To do today
*# Eat
* To get someone else to do
*# This
*# That
*## And the other
<ul><li>To do today<ol><li>Eat</li></ol></li><li>To get someone else to do<ol><li>This</li><li>That<ol><li>And the other</li></ol></li></ol></li></ul>
# To do today
#* Eat
# To get someone else to do
#* This
#* That
#** And the other
<ol><li>To do today<ul><li>Eat</li></ul></li><li>To get someone else to do<ul><li>This</li><li>That<ul><li>And the other</li></ul></li></ul></li></ol>
CSS Classes
* List One
*.MyClass List Two
* List Three
<ul><li>List One</li><li class="MyClass">List Two</li><li>List Three</li></ul>
Mixing Lists and Block Quotes
* List One
** List Two
**> A quote
**> Another quote
* List Three
<ul><li>List One<ul><li>List Two<blockquote><p>A quote</p><p>Another quote</p></blockquote></li></ul></li><li>List Three</li></ul>
Paragraphs in Lists
* First entry
* <$transclude tiddler="MyTiddler" mode="block"/>
* Third entry# Step 1
# Step 2
# Step 3<div>
Here is the first of several paragraphs. Note that the double linebreak preceding this paragraph is significant.
And here is the second of several paragraphs.
</div>
# Step 4
# Step 5
# Step 6Introduction
Examples
<$list filter="[tag[ListWidget]sort[title]]"/><$list filter="[tag[ListWidget]sort[title]]">
<<currentTiddler>>
{{||$:/core/ui/ViewTemplate/tags}}
</$list><$list filter="[tag[ListWidget]sort[title]]" template="$:/core/ui/ViewTemplate/subtitle"/>
Grouped Lists
Content and Attributes
<$list> widget is an optional template to use for rendering each tiddler in the list. Alternatively, the template can be specified as a tiddler title in the template attribute. As a fallback, the default template just displays the tiddler title.Attribute Description filter The tiddler filter to display template The title of a template tiddler for transcluding each tiddler in the list. When no template is specified, the body of the ListWidget serves as the item template. With no body, a simple link to the tiddler is returned. editTemplate An alternative template to use for DraftTiddlers in edit mode variable The name for a variable in which the title of each listed tiddler is stored. Defaults to currentTiddler emptyMessage Message to be displayed when the list is empty storyview Optional name of module responsible for animating/processing the list history The title of the tiddler containing the navigation history Edit mode
<$list> widget can optionally render draft tiddlers through a different template to handle editing, see DraftMechanism.storyview attributestoryview attribute specifies the name of an optional module that can animate changes to the list (including navigation). The core ships with the following storyview modules:classic: renders the list as an ordered sequence of tiddlerszoomin: just renders the current tiddler from the list, with a zoom animation for navigating between tiddlerspop: shrinks items in and out of placeHistory and navigation
history attribute specifies the name of a tiddler that is used to track the current tiddler for navigation purposes. When the history tiddler changes the list view responds by telling the listview to handle navigating to the new tiddler. See HistoryMechanism for details.
space denotes a sequence of whitespace characters.name is a sequence of non-whitespace characters other than ( or >.param-value has the following syntax:param-name is a sequence of letters (A–Z, a–z), digits (0–9), hyphens (-) and underscores (_).value is specified as follows:<<double angle brackets>> around the name and any parameter values.'single quotes', "double quotes", """triple double quotes""" or [[double square brackets]]. Triple double quotes allow a value to contain almost anything. If a value contains no spaces or single or double quotes, it requires no delimiters.$macrocall widget. The widget itself offers greater flexibility, including the ability to transclude parameter values or generate them via additional macros.\define sayhi(name:"Bugs Bunny" address:"Rabbit Hole Hill")
Hi, I'm $name$ and I live in $address$.
\end
<<sayhi>>
<<sayhi Bugs>>
<<sayhi "Donald Duck" Disneyland>>
<<sayhi "Mickey Mouse" "Mouse House">>
<<sayhi name:'Minnie Mouse' address:[[Mouse House]]>>
<<sayhi address:"Quacky Towers" name:"Donald Duck">>
<<sayhi "Mickey Mouse" """"Mouse House",
Rodent's Lane,
Squeaksville,
Ratland""">>
\define pragma, using railroad diagrams. A simpler overview is also available.space denotes a sequence of whitespace characters.name is a sequence of non-whitespace characters other than ( or >.params) has the following syntax:sep) is any sequence of characters that does not match a param-name. Among other things, this includes commas, spaces and linefeeds.param-name is a sequence of letters (A–Z, a–z), digits (0–9), hyphens (-) and underscores (_).param has the following syntax:default value of a parameter is specified as follows:rest of the definition has the following syntax:lf denotes a linefeed.snippet is any sequence of characters that doesn't terminate the macro definition. That is to say, a single-line snippet cannot contain a linefeed, and a multi-line snippet cannot contain \end on a line of its own.\define pragma. Like any pragma, this can only appear at the start of a tiddler.\end appears on a line by itself:\define sayhi(name:"Bugs Bunny" address:"Rabbit Hole Hill")
Hi, I'm $name$ and I live in $address$.
\end
\end marker:\define sayhi(name:"Bugs Bunny") Hi, I'm $name$.Placeholders
$this$.$(this)$.\define say-hi-using-variables()
Hi, I'm $(name)$ and I live in $(address)$.
\end
\define name() Bugs
<$set name="address" value="Rabbit Hole Hill">
<<say-hi-using-variables>>
</$set>
Scope
$:/tags/Macro.$importvariables widget.
Introduction
italicise that takes a single parameter called text can be invoked in any of these ways:<<italicise "Text to be made into italics">>
<<italicise text:"Text to be made into italics">>
<$macrocall $name="italicise" text="Text to be made into italics"/>
<$macrocall $name="italicise" text={{Title of tiddler containing text to be italicised}}/>
<$macrocall $name="italicise" text=<<textMaker "Another macro to generate the text to be italicised">>/>data: URIs: $:/themes/tiddlywiki/starlight/styles.tidContent and Attributes
<$macrocall> widget is ignored.Attribute Description $name Name of the macro to invoke $type ContentType with which the macro text should be parsed (defaults to text/vnd.tiddlywiki)$output ContentType for the output rendering (defaults to text/html, can also be text/plain)parameters Macro parameters specified as attributes \define pragma. (Behind the scenes, this is transformed into a $set, i.e. macros and variables are two sides of the same coin.)[[ or <) without triggering its normal WikiText meaning is to wrap it in a macro.$name$ (a placeholder for a macro parameter) and $(name)$ (a placeholder for a variable).dumpvariables macro lists all variables (including macros) that are available at that position in the widget tree.$importvariables widget can be used to copy macro definitions to another branch of the widget tree. TiddlyWiki uses this technique internally to implement global macros – namely any macros defined in tiddlers with the $:/tags/Macro tag.makedatauri is used to implement the datauri macro.Parameters
$:/UpgradeLibrary 티들러를 구축합니다.library 플러그인 형식과 일반 플러그인 티들러입니다. 티들리위키5 저장소 안에서 사용할 수 있는 각 플러그인, 테마 및 언어 팩의 복사본을 포함합니다.--makelibrary <제목>$:/UpgradeLibrary입니다.
$:/config/myNewTiddler/Tags and ... $:/config/myNewTiddler/Title<$set name="journalTitleTemplate" value={{$:/config/NewJournal/Title}}>
<$set name="journalTags" value={{$:/config/NewJournal/Tags}}><$set name="journalTitleTemplate" value={{$:/config/myNewTiddler/Title}}>
<$set name="journalTags" value={{$:/config/myNewTiddler/Tags}}>
<$set name="journalTitleTemplate" value={{config/myNewTiddler/Title}}>
<$set name="journalTags" value={{config/myNewTiddler/Tags}}><math><mrow><mo>[</mo><mtable><mtr><mtd><mn>0</mn></mtd><mtd><mn>1</mn></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mn>1</mn></mtd></mtr><mtr><mtd><mn>1</mn></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd></mtr></mtable><mo>]</mo></mrow></math>
[list[Days of the Week]minlength[7]]
[list[Days of the Week]minlength[1]]
application/javascript and with the field module-type set to the ModuleType of the module.module-type field of a JavaScript module is a string that identifies the type of the module. Here is a list of the module types used in this wiki:
$tw.config 안에 넣을 데이터.$tw 안에 넣을 전역 데이터.$tw.Tiddler 프로토타입에 메서드를 추가합니다.$tw.utils에 메서드를 추가합니다.$tw.utils에 Node.js 특정 메서드를 추가합니다.$tw.Wiki에 메서드를 추가합니다.
purpose select the names of all TiddlyWiki module types input ignored parameter none output the name of each known TiddlyWiki module type, in alphabetical order
';. .;c'
:XNo ,kjack' .:dd
,K0X: '0l Tiddly:',..,Wiki.
jacK' .dk. '';jack .xk;
Jack; ..',','... '0c .0c
:0:c0l. .:dTidllyc::cjoWikioc:,,,,;;:cJACKc:;;d0. 'K:
l0:'jack,... ...',:lkxc. ..';:ccc:;;,'...',:loc .Kc
,xk:..,jackjackjack;'. :K,
.lxxl;.. . .Ox.
.':lTiddlyWikI. .xk.
`` ;0; . ;Od.
.dO' .0Ojackx,
cOo' .kk'.'..
.k0' .cOo.
lO; ... .jack.
.xk' .jackTiddlyWikijackO, .lkd;.
;Oo. .dO. .ok. ,Oo.
l0; .c, ,0: .kd l0.
.xk. .xNx lO. lO. ;0,
.Od. ,XW0, :0; dk. .kx.
.kx. jACKx' cOl. .Ol ;0:
.oO: .JACKx. .jack;'. .0: c0;
'dkc ,lXKd' .'jack. .Ol cOc.
.;ljack,.;xkc,...,oK, 'xxjack. .oko.
`` 'cljack' .okdlcJack.
'JacK,'
[list[Days of the Week]] +[move[Wednesday]]
[list[Days of the Week]] +[move:-2[Wednesday]]
multids. The file is structured as a block of shared fields followed by a blank line. The rest of the file is a sequence of comments and tiddlers. Tiddlers are specified by their title, followed by a colon, at least one space character, and then the rest of the line is the text field for the tiddler.title: $:/language/ControlPanel/
tags: strings
modifier: JoeBloggs
Basics/Caption: Basics
# This is a comment
Basics/Version: ~TiddlyWiki Versiontitle field is specified in the header then it is treated as a prefix for the individual tiddlers defined in the title.Syntax Specification
MultiTiddlerFiles
Header Line
Tiddler Descriptor Line
Comment Line
Namespace Format Description $:/*CamelCase Root user interface tiddlers (eg control panel, advanced search) $:/config/*CamelCase User-oriented configuration setting $:/core/images/*hyphen-case Core images $:/core/modules/*lowercase JavaScript module tiddlers $:/core/save/*lowercase Saving templates for creating TiddlyWiki documents $:/core/templates/*inconsistent Templates needed for TiddlyWiki to operate. Currently uses a mix of dashes and periods to separate words $:/core/ui/*inconsistent Tiddlers comprising the default user interface of TiddlyWiki. Currently uses a mix of CamelCase and lowercase naming conventions $:/core/wiki/*lowercase Metadata about the entire wiki $:/docs/*lowercase Documentation tiddlers $:/messages/*CamelCase System messages $:/plugins/*lowercase Plugin tiddlers, and plugin content $:/snippets/*inconsistent Reusable snippets (will be replaced by macros) $:/state/*lowercase User interface state tiddlers $:/tags/*CamelCase User interface configuration tags $:/temp/*lowercase Temporary tiddlers that shouldn't be saved $:/themes/*lowercase Theme plugins Introduction
Content and Attributes
Attribute Description story Name of the tiddler containing the story list to be manipulated history Name of the tiddler containing the history list to be manipulated openLinkFromInsideRiver Determines the location for opening new tiddlers from links within the story river: at the top or bottom of the story river, or above or below the current tiddler openLinkFromOutsideRiver Determines the location for opening new tiddlers from linkes outside the story river: at the top or bottom of the story river Widget Messages
purpose find which titles in a list field follow the input onesinput a selection of titles parameter T = a tiddler titleoutput a selection containing each title that immediately follows each of the input titles in the list field of Tlist field and appended to the output. If a title is not listed in the field, or is the last title there, then it contributes nothing to the output.[[Monday]next[Days of the Week]]
[[Sunday]next[Days of the Week]]
Tuesday Wednesday Thursday +[next[Days of the Week]]
Command line changes
index.html to the current directory:tiddlywiki mywiki --rendertiddler $:/core/save/all index.html text/plainoutput folder within the TiddlyWikiFolder. So the command above will now write the file index.html to mywiki/output/index.html.index.html file within the current directory:tiddlywiki mywiki --output . --rendertiddler $:/core/save/all index.html text/plain--rendertiddlers command now clears the output folder before it writes any files. This means that any previous --rendertiddler commands to the same folder will have their output deleted.
Change to $:/SiteTitle and $:/SiteSubtitle
Changed parsing rules for content of HTML elements
<p> tags to wrap them. It also recognises block syntax like headings, lists and tables.Examples
<blockquote>
! This is a heading
And a paragraph of text.
</blockquote>
This is a heading
<blockquote><h1 class="">This is a heading</h1><p>And a paragraph of text.</p></blockquote>
<blockquote>
! This is a heading
And a paragraph of text.
</blockquote>
! This is a heading
And a paragraph of text.
<p><blockquote>
! This is a heading
And a paragraph of text.
</blockquote>
</p>
Changed commands for TiddlyWiki on Node.js
tiddlywiki command was run against a wiki folder that didn't have the necessary tiddlywiki.info file then it would be automatically created. Now, the wiki folder must be initialised with the InitCommand.tiddlywiki mywikifolder --init server
tiddlywiki mywikifolder --serverParameters
0hh:0mm, DDth MMM YYYY
purpose sort the input by number field input a selection of titles parameter F = the name of a field, defaulting to titleoutput the input, sorted into ascending order by field F, treating field values as numbers! outputthe input, likewise sorted into descending order
purpose sort the input titles by number field, treating upper and lower case as different input a selection of titles parameter F = the name of a field, defaulting to titleoutput the input, sorted into ascending order by field F, treating field values as numbers! outputthe input, likewise sorted into descending order
purpose select the Nth input titleinput a selection of titles parameter N = an integer, defaulting to 1output the Nth input title[list[Days of the Week]nth[]]
[list[Days of the Week]nth[5]]
list field of the tag tiddler, in the order given there.T, look for a list-before field. If this has a tiddler title as its value, place T just before that one.T at the very start of the list.T, look for a list-after field. If this has a tiddler title as its value, place tiddler T just after that one.
purpose selectively reverse the input list input a selection of titles parameter F = Either the string reverse or another valueoutput the input, with the order reversed if F is the special value reversereverse.OXTWIG #2
OXTWIG #1
Adding custom-made tiddlers to the user interface
$:/tags/EditTemplate, the words 'This is a reminder' will appear inside every tiddler when you edit it.$:/tags/, and insert the title of your tiddler in the proper place in the list field. For example, if you want the words 'This is a reminder' from the example above to appear above the tags editor in editing mode, edit the tiddler $:/tags/EditTemplate, go to the 'list' field, and insert [[Reminder to self]] right before $:/core/ui/EditTemplate/tags. Creating new buttons for the ViewToolbar and page controls
reveal into the text area, and save.\define newHereButtonTags()
[[$(currentTiddler)$]]
\end
\define newHereButton()
<$button class=<<tv-config-toolbar-class>>>
<$action-sendmessage
$message="tm-new-tiddler"
$param="TITLE OF YOUR SKELETON BUTTON"
title="New tiddler"
tags=<<newHereButtonTags>> />
<$list filter="[<tv-config-toolbar-icons>prefix[yes]]">
{{TITLE OF YOUR SVG IMAGE TIDDLER}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<span class="tc-btn-text"><$text text="CAPTION FOR YOUR BUTTON"/></span>
</$list>
</$button>
\end
<<newHereButton>>Removing shadow tiddlers from the user interface
$:/core/ui/. These are the core tiddlers that define the user interface. These tiddlers are tagged with SystemTags, and removing or adding these tags will adjust the tiddler and page layouts.$:/tags/SideBar so that it appears in the Sidebar. Removing the tag from that tiddler will remove the More tab from the Sidebar, and reinserting the Sidebar tag to that tiddler will make it reappear in the Sidebar. $:/tags/ViewTemplate from the tiddler $:/core/ui/ViewTemplate/subtitle will remove the subtitles from all tiddlers.enter twice to create a double line break:This is the first paragraph.
And this is the second paragraph.This is a
paragraph made
up of
short lines<p>This is a
paragraph made
up of
short lines</p>
--password <비밀번호>Introduction
Content and Attributes
<$password> widget is ignored.Attribute Description name Name of the password vault entry % followed by two additional characters.%20 and an actual percent sign is represented as %25.
Simple Permalinks
#:Story Permalinks
Tiddlers within the story sequence Tiddlers, Tags, TiddlerFields:About URL encoding
%20.Permalink Behaviour
Technical Details
Plugin fields
Field Description title Title of plugin description Description of plugin author Author of plugin version Version string (must conform to SemanticVersioning convention) source Source URL of plugin type Must be application/json plugin-type Can be plugin (default), language or theme text JSON encoding of the list of tiddlers comprising the plugin list Names of exposed plugin information tiddlers (see below) name Name of the theme (only for themes) dependents List of dependent plugins (currently only implemented for themes) Information Tiddlers for Plugins
<plugin-name>/icon (for example, $:/core/icon).list field of the plugin tiddler. By convention, some or all of the following should be provided:$:/<plugin-name>/<current-language>/<tab-name> (for example, $:/core/en-GB/readme)$:/<plugin-name>/<tab-name> (for example, $:/core/readme)plugin.info file that contains the metadata for the plugin. It can also optionally identify files external to the plugin folder that should be loaded as tiddlers.plugin.info file should contain the following JSON structure:{
"title": "$:/plugins/publisher/name",
"description": "An exemplary plugin for demonstration purposes",
"author": "JeremyRuston",
"version": "1.2.3-alpha3",
"core-version": ">=5.0.0",
"source": "http://tiddlywiki.com/MyPlugin",
"plugin-type": "plugin",
"list": "readme license history"
}version field is omitted from a plugin.info file when the plugin folder is packed then it is automatically filled in by the core to the current core version number. This is to ensure that all the core plugins carry the correct version number. Generally plugin authors will want to ensure that they do explicitly specify a version number.
Introduction
plugin-type field that may take the following values:plugin (default) - a plain plugintheme - a theme plugin (see ThemeMechanism)language - for translations only$:/plugins/publisher/name. Plugins that are part of the core TiddlyWiki distribution have titles of the form $:/plugins/tiddlywiki/name.More information
tc-popup-keep\. They can only appear at the start of the text, but blank lines are allowed between them. If a pragma line appears in the main body of the text, it is treated as if it was ordinary text.\define\rules
purpose filter the input titles by how they start input a selection of titles parameter S = a string of charactersoutput those input titles that start with S! outputthose input tiddlers that do not start with SS, capital and lowercase letters are treated as different.
purpose prepend a range of items from an array to the list input a list of items suffix an integer N, defaulting to all parameter list = the array of items to be prepended to the head of the listoutput a list with items prepended from the head of the operand array ! outputa list with items prepended from the tail of the operand array [list[Days of the Week]prepend[Yesterday Today Tomorrow]]
[list[Days of the Week]!prepend:3{Days of the Week!!short}]
[list[$:/StoryList]]
purpose find which titles in a list field precede the input onesinput a selection of titles parameter T = a tiddler titleoutput a selection containing each title that immediately precedes each of the input titles in the list field of Tlist field and appended to the output. If a title is not listed in the field, or is the first item there, then it contributes nothing to the output.[[Wednesday]previous[Days of the Week]]
[[Monday]previous[Days of the Week]]
Tuesday Wednesday Thursday +[previous[Days of the Week]]
[list[Days of the Week]] +[putafter[Wednesday]]
[list[Days of the Week]] +[putafter:2[Tuesday]]
[list[Days of the Week]] [[Yesterday]] [[Today]] [[Tomorrow]] +[putafter:3[Tuesday]]
purpose move N trailing items before the marker input a selection of titles suffix an integer N, defaulting to 1 parameter marker = an integer, defaulting to 1output the first N input titles[list[Days of the Week]] +[putbefore[Wednesday]]
[list[Days of the Week]] +[putbefore:2[Tuesday]]
[list[Days of the Week]] [[Yesterday]] [[Today]] [[Tomorrow]] +[putbefore:3[Tuesday]]
[list[Days of the Week]] +[putfirst[]]
[list[Days of the Week]] +[putfirst:2[]]
[list[Days of the Week]] [[Yesterday]] [[Today]] [[Tomorrow]] +[putfirst:-2[]]
[list[Days of the Week]] +[putlast[]]
[list[Days of the Week]] +[putlast:2[]]
one two three [list[Days of the Week]] +[putlast:-3[]]
transclusion variable.Parameters
qualify macro depend on its location in the transclusion stack.qualify and then the value of the transclusion variable.<ul>
<li><code><<qualify "BaseTiddler">></code></li>
<li><code><<transclusion>></code></li>
</ul>
<ul>
<li><code><<qualify "BaseTiddler">></code></li>
<li><code><<transclusion>></code></li>
</ul>
Introduction
<input type="radio"> that reflects whether a given tiddler field has a specified value. Selecting the radio button sets to the tiddler field to the value.Content and Attributes
<$radio> widget is displayed within an HTML <label> element also containing the radio button. This means that clicking on the content will have the same effect as clicking on the button itself.Attribute Description tiddler Title of the tiddler to manipulate (defaults to the current tiddler) field The field of the tiddler bound to the radio button index New in 5.1.14 The index of the tiddler being DataTiddler bound to the radio button value The value for the field or index of the tiddler class CSS classes to be assigned to the label around the radio button Field Mode
modifier field of this tiddler:<$radio field="modifier" value="JoeBloggs"> Joe Bloggs</$radio>
<$radio field="modifier" value="JaneBloggs"> Jane Bloggs</$radio>Index Mode
Tree Frog index in the tiddler AnimalColours:<$tiddler tiddler="AnimalColours">
<$radio index="Tree Frog" value="green"> green</$radio>
<$radio index="Tree Frog" value="brown"> brown</$radio>
</$tiddler>repeated item. The comma path runs from right to left, and can only be reached by first passing through repeated.<$railroad> widget for generating railroad diagrams as SVG images.type field set to text/vnd.tiddlywiki.railroad, and that tiddler can simply be transcluded to wherever it is needed.x and y here stand for any component.<- and -> delimiters allow you to force a single component to be treated as a sequence. This is occasionally useful for spacing a diagram outx appear straight aheadx+ suffix adds y as a separator between each x and the nextx, i.e. a list of zero or more xInstalling TiddlyWiki on Node.js
apt-get install nodejs on Debian/Ubuntu Linux or Termux for Android, or brew install node on a Macnpm install -g tiddlywikisudo npm install -g tiddlywiki (Mac/Linux)tiddlywiki --versiontiddlywiki mynewwiki --init server to create a folder for a new wiki that includes server-related componentstiddlywiki mynewwiki --server to start TiddlyWikitiddlywiki --build index-g flag causes TiddlyWiki to be installed globally. Without it, TiddlyWiki will only be available in the directory where you installed it.node: command not found error though node.js package is installed, you may need to create a symbolic link between nodejs and node. Consult your distro's manual and whereis to correctly create a link. See github issue 1434sudo ln -s /usr/bin/nodejs /usr/bin/node
Using TiddlyWiki on Node.js
tiddlywiki --verbose --load mywiki.html --rendertiddler ReadMe ./readme.htmltiddlywiki from the command line boots the TiddlyWiki kernel, loads the core plugins and establishes an empty wiki store. It then sequentially processes the command line arguments from left to right. The arguments are separated with spaces.--.tiddlywiki [<wikipath>] [--<command> [<arg>[,<arg>]]]
Upgrading TiddlyWiki on Node.js
npm update -g tiddlywikisudo npm update -g tiddlywikiAlso see
Script Files
bin folder that you can use to automate common tasks, or as a useful starting point for your own scripts. See Scripts for building tiddlywiki.com for details of the scripts used to build and release http://tiddlywiki.com/.serve: serves tw5.com./bin/serve.sh -h
./bin/serve.sh [edition dir] [username] [password] [host] [port]./bin/serve.cmd -h
./bin/serve.cmd [edition dir] [username] [password] [host] [port]tw5.com-server edition. By default, the Node.js serves on port 8080. If the optional username parameter is provided, it is used for signing edits. If the password is provided then HTTP basic authentication is used. Run the script with the -h parameter to see online help.http://127.0.0.1:8080 in a browser.test: build and run teststest edition of TiddlyWiki on the server to perform the server-side tests and to build test.html for running the tests in the browser.lazy: serves tw5.com with lazily loaded images./bin/lazy.sh <username> [<password>]./bin/lazy.cmd <username> [<password>]tw5.com-server edition content with LazyLoading applied to images.2bld: builds TiddlyWiki 2.6.5diff is used for *nix, fc for Windows).
purpose filter the input by pattern-matched field input a selection of titles suffix F = the name of a fieldparameter X = a regular expressionoutput those input tiddlers in which field F matches X! outputthose input tiddlers in which field F does not match XX can optionally start or end with a string of flags:i flag is generally useful: it forces the different between capital and lowercase letters to be ignored.X is empty, regexp will match all of the input tiddlers.[!is[system]regexp[Wiki]]
Wiki in their title
[!is[system]regexp[(?i)Wiki]]
Wiki in their title, ignoring case
[!is[system]regexp[Wiki(?i)]]
[regexp[(?i)\.jpe?g$]]
.jpg or .jpeg, ignoring case
[regexp:created[^201408]]
[0-9]{2} matches two consecutive digits. Because it contains square brackets, the way to use it with the regexp operator is via a variable, as follows:<$set name="digit-pattern" value="[0-9]{2}">
<<list-links "[regexp:title<digit-pattern>]">>
</$set>
<$setstyle> - use <div style=<<macroName Param>>> instead<$video> - will return in a later release<$datauri> - use the <<makedatauri>> built-in macro instead<$error> - may return in a later release<$import> - use the BrowseWidget, DropzoneWidget and NavigatorWidget instead<$info> - use the <<changecount>> built-in macro instead<$version> - use the <<version>> built-in macro instead<div> or a <span> to be able to style the content<$view format="link"/> is no longer available; use an explicit <$link> widget instead<$view format="link"/> is no longer available; use the TranscludeWidget insteadtiddler is used to reference a tiddler by title, not titlebody element now has the class tw-body, which will need to be specified in any overrides<body> elements in a document<$edit-text> widget<<tabs>> macro to the tiddler info panel, the control panel and the sidebarcaption field for the text of the tab:list field of the corresponding tag tiddlerNew Features
tw-close-other-tiddlers message (eg, )Improvements
<$setvariable> to <$set><$setvariable> will temporarily remain as a synonym for <$set> for the next few releasesBug fixes
fields and index attributes of the TranscludeWidgetNew Features and Improvements
$:/state/tab/sidebar-{$:/core/ui/SideBar|$:/core/ui/SideBar||}{$:/core/ui/PageTemplate|$:/core/ui/PageTemplate||} one gets $:/state/tab/sidebar-{1743827719}$:/tags/PageTemplateBug fixes
Internal changes
$:/core/templates/tiddlywiki5.template.html to $:/core/save/allBug fixes
Improvements
$:/theme isn't defined or refers to a missing tiddler, then fallback through Snow White to Vanilla. This means that empty.html now defaults to Snow WhiteBug fixes
$:/tags/PageControls tiddlers from being reorderedInternal changes
5.0.x-beta and the final release will be 5.1.xHighlights
Documentation Improvements
Usability Improvements
Hackability Improvements
Bug Fixes
[untagged[]] filter operatorIncompatible Changes
/output folder within TiddlyWikiFolders (it used to be current directory)Documentation Improvements
Usability Improvements
[link text](#TiddlerTitle)[ext[tooltip|url]])Hackability Improvements
tabs macrobefore and afterget operator.tid TiddlerFiles to allow single line text fields$:/ShowEditPreview to $:/state/showeditpreviewBug Fixes
Contributors
Accessibility Improvements
Usability Improvements
text/html tiddlers so that they are displayed within an HTML iframe elementHackability Improvements
listed operator to use any list fieldBug Fixes
Contributors
Major Changes
Improved Control Panel Plugins Tab
Configurable Button Toolbars
Upgrade Mechanism
Improvements to CamelCase Recognition
Automatic Permalinking Off by Default
Usability Improvements
\rules pragmaHackability Improvements
tabs macro to allow tabs to be templated*.htm and *.hta files as well as the existing support for *.html filesBug Fixes
\end of a macro definitionContributors
Usability Improvements
Hackability Improvements
saver-handler.js out of syncer.jsBug Fixes
Contributors
Incompatible Changes
tw- to tc- (eg tw-tiddler-frame has become tc-tiddler-frame; missing prefixes have also been added, so btn-invisible has become tc-btn-invisible)tw- to tm- (eg tw-close-tiddler has become tm-close-tiddler)tw- to tv- (eg tw-config-toolbar-icons has become tv-config-toolbar-icons)Compatibility with TiddlyWikiClassic
Usability Improvements
Hackability Improvements
all operator to be able to select all the source tiddlers\define mymacro() yes would set the macro value to " yes", with a leading space)suffix and removesuffix operatorsBug Fixes
Contributors
Highlights
Incompatible Changes
Change System Tag
$:/tags/stylesheet with $:/tags/Stylesheet$:/tags/stylesheet is not consistent with other system tags. This release adds support for $:/tags/Stylesheet, and adds a deprecation warning if $:/tags/stylesheet is used. Support for $:/tags/stylesheet will be removed before the beta.$:/tags/Stylesheet and a deprecation warning when $:/tags/stylesheet is usedChange ButtonWidget
title attribute to tooltiptitle attribute in the ButtonWidget was not consistent with the tooltip attribute used by the ImageWidget and LinkWidget. This release adds support for the tooltip attribute to the ButtonWidget alongside the existing support for the title attribute, but with a deprecation warning.tooltip attribute to ButtonWidgetRemoving Support for RegExp Filter Operands
Repository Reorganisation
bin folderUsability Improvements
Hackability Improvements
serve.sh/serve.cmd scriptstimeline macrodumpvariables macro<p> tag from edit tags and types dropdownsBug Fixes
Contributors
File Layout of tiddlywiki.com
Hackability Improvements
list-links macro (further improvements are planned).markdown and .md filestimeline macro to support a subfilterBug Fixes
.jpeg file extensionsContributors
Improvements
*.htaBug fixes
{{!!tags}})$:/tags/PageControls)Internal changes
Improvements
tiddlywiki.info file in the root of wiki folder file is now optional, falling back to a default configuration suitable for serverside use (commit)tiddlers subfolder in the wiki folderBug Fixes
Improvements
Bug Fixes
Improvements
Bug Fixes
Incompatible Changes
Documentation updates
Improvements
Bug Fixes
Incompatible Changes
Documentation Improvements
Usability Improvements
Scalability Improvements
Hackability Improvements
.multids MultiTiddlerFilesBug Fixes
Highlights
Documentation Improvements
Usability Improvements
$:/ prefixlist-before and list-after fields for controlling tag ordering (see TiddlerTags for details)Hackability Improvements
sourceURL handling to eval() so that tiddler modules can be properly debugged in Chrometw-site-title for the site titleBug Fixes
Hackability Improvements
Bug Fixes
Contributors
Incompatible Changes
title attribute on the ButtonWidget$:/tags/stylesheet system tagHackability Improvements
Contributors
Major Improvements
Performance Optimisations
New Editions
External Text Tiddlers
.tid files:New "Tight" Theme
Other Improvements
Translation Improvements
Usability Improvements
Hackability Improvements
publishFilter to default save template$tw.utils.tagToCssSelector(tagName) for converting tag titles into a form suitable for matching the tc-tagged-* classes generated by TiddlyWikiBug Fixes
tiddlywiki.info files$:/templates/something being erroneously classed as $:/temp tiddlers, and so excluded from syncingNode.js Improvements
.meta filetiddlywiki.files support in TiddlyWikiFolders to allow directories to be loaded recursively, as well as individual filesContributors
Major Improvements
New Editor Toolbars
Improved Bitmap Editor
Improved Plugins
.enex files to be imported into TiddlyWiki.Text-Slicer Plugin Improvements
list-children filter operatorOther Improvements
Usability Improvements
Hackability Improvements
tiddlywiki/internals plugin for an example)mobile-web-app-capable meta tag for Android Chromeplainwikified format for the ViewWidgetBug Fixes
Node.js Improvements
Contributors
Bug Fixes
Node.js Bug Fixes
.tid extension added to tiddler filenamesOther Improvements
Contributors
Usability Improvements
Hackability Improvements
Bug Fixes
Contributors
Usability Improvements
Hackability Improvements
addprefix and addsuffix operatorslist-links macro to display caption field if presentBug Fixes
each operator to work with missing tiddlerstm-home message wasn't navigating to a tiddler, causing problems in zoomin storyviewtimeline macroNode.js Changes
Contributors
Usability Improvements
Hackability Improvements
Bug Fixes
Node.js Changes
Contributors
Translation Improvements
Usability Improvements
Hackability Improvements
timeline macro to be able to use different date fieldssearch operator to allow a field to be specifiedBug Fixes
Node.js Changes
Changes affecting plugin authors
tc-popup-handle.Contributors
Translation Improvements
Hackability Improvements
has and field operatorsBug Fixes
Node.js Changes
Changes affecting plugin authors
$tw.utils.each so that the loop can be broken out ofContributors
Translation Improvements
Usability Improvements
position: sticky (such as Safari and Firefox)<p> tags)Hackability Improvements
Bug Fixes
<iframe> elementsNode.js Changes
Contributors
Major Improvements
New "Powered by TiddlyWiki" plugin
New "Fluid story, fixed sidebar" mode
Toolbar Button Style Setting
New Tiddler Toolbar Button: "Open in new window"
Improvements for visually impaired users
New "Solar Flare" palette
Options for Story Control
New Hidden Settings
New Vars widget
<$vars greeting="Hi" me={{!!title}} sentence=<<helloworld>>>
<<greeting>>! I am <<me>> and I say: <<sentence>>
</$vars>Other Improvements
Translation Improvements
Usability Improvements
Hackability Improvements
\begin/\end environments, including support for array, matrix, pmatrix, bmatrix, vmatrix, and Vmatrix\sqrt arguments, e.g. \sqrt[3]{x}\phantom\#, \&$name and $value attributes<kbd> elements such as escape and enter/.-Bug Fixes
position: relative; to example scrollable widget stylesContributors
Release 5.1.13
Bug Fixes
Node.js Bug Fixes
.tid extension added to tiddler filenamesOther Improvements
Contributors
purpose remove a list of titles specified in the operand from the input input a list of items suffix an integer N, defaulting to all parameter array = an array of items to removeoutput items removed from current list that appear at the head of the operand array ! outputitems removed from current list that appear at the tail of the operand array [list[Days of the Week]] +[remove[Tuesday Wednesday Thursday]]
[list[Days of the Week]] +[remove:3[Monday Wednesday Friday Saturday]]
[list[Days of the Week]] +[!remove:2{Days of the Week!!list}]
purpose filter the input titles by how they start, deleting that prefix input a selection of titles parameter S = a string of charactersoutput those input titles that start with S, but with those characters discardedS, capital and lowercase letters are treated as different.
purpose filter the input titles by how they end, deleting that suffix input a selection of titles parameter S = a string of charactersoutput those input titles that end with S, but with those characters discardedS, capital and lowercase letters are treated as different.text/html이며 지정된 파일이름으로 저장합니다. 선택적으로 틀을 지정할 수 있으며, 이 경우 틀 티들러가 렌더되는 티들러로 "currentTiddler" 변수 집합으로 렌더됩니다. (첫 매개변수 값)--rendertiddler <제목> <파일이름> [<형식>] [<틀>]output 하위 디렉터리로 상대적으로 해석됩니다. --output 명령은 다른 디렉터리로 직접 출력하는 데 사용할 수 있습니다.text/html)과 확장 기능 (기본값은 .html)의 파일을 구분하는 필터와 일치하는 티들러의 집합을 렌더합니다.--rendertiddlers <필터> <틀> <경로이름> [<형식>] [<확장기능>] ["noclean"]--rendertiddlers [!is[system]] $:/core/templates/static.tiddler.html ./static text/plainoutput 하위 디렉터리로 상대적으로 해석됩니다. --output 명령은 다른 디렉터리로 직접 출력하는 데 사용할 수 있습니다.[list[Days of the Week]] Last +[replace[Wednesday]]
[list[Days of the Week]] Last +[replace:2[Tuesday]]
[list[Days of the Week]] [[Yesterday]] [[Today]] [[Tomorrow]] +[replace:3[Tuesday]]
TiddlyWiki on GitHub
Policies for Managing Issues
Creating Issues
/.. denotes the current folder, and .. denotes the parent folder./. Anything after the final / is treated as an arbitrary filename within the intended path, and is discarded./ is discarded./.Parameters
<<resolvepath "./backup" "http://example.com/store.php">>
<<resolvepath "backup" "http://example.com/store.php">>
<<resolvepath "../backup" "http://example.com/store.php">>
<<resolvepath "../jpg/Motovun_Jack.jpg" "http://example.com/resources/images/png/">>
<<resolvepath "../jpg/../png/Motovun_Jack.png">>
<<resolvepath "jpg/Motovun_Jack.jpg">>
Leaflet maps plugin by Sylvain Comte
<$leafmap> widget displays an interactive map. Select size, location and zoom, clustering distance, and background. You can display data : geojson, point(s), polygon(s) and/or polyline(s) directly or calling GeoTiddler(s). Tiddler can be called individually, by list or with a filter."Noteself" by Danielo Rodríguez
"Slides and Stories" by Jan
SlidesnStories
MetaTabs
It is inspired by MagicTabs and Tiddlyscholar by Alberto Molina Pérez, which are very elaborated tools that alas do not seem to be in active development any more.
I wanted to change the behaviour in some ways. For example I wanted show tabs only if they have content. ...furthermore there is
"TiddlyWiki Knowledge Network" by Dmitry Sokolov
"Cardo - Task and Project Management Wiki" by David Szego
"TB5 - a pocket full of tips" by Tobias Beer
"Hacks" by Thomas Elmiger
"TiddlyServer" by Matt Lauber
"TiddlyWiki5 Forum on Reddit" by Riz
"Ghostwriter theme by Rory Gibson" adapted for TW5 by Riz
"Moments: A little color won't hurt" by Riz
"How Does Twederation Work" by Jed Carty
"Gospel Bubbles" by Rev. David Gifford
"Filter Examples" by Tobias Beer
"SK Plugins" by Stephen Kimmel
"Mal's Sandbox" by Mal
twproxy by Steve Gattuso
TiddlyWiki extensions for Sublime Text 3 by roma0104
*.tid files.TiddlyChrome by Arlen Beiler
datepicker plugin based on Pikaday, by kixam
modified and created.
TiddlyWiki Video Tutorials by Francis Meetze
TWCommunitySearch
TiddlyWiki Jingle by Måns Mårtensson
rboue's plugins for TiddlyWiki
"Encrypt single tiddler plugin" by Danielo Rodriguez
TWaddle by Matias Goldman
vis.js Timeline by emkay, revived by kixam
SeeAlso by Matias Goldman
TWGuides by Andreas Hahn
Ace Editor Plugin by Joerg Plewe
IndexedDB Plugin by Andreas Abeck
"TW5-TeXZilla" plugin by Joe Renes
"GSD5" by Roma Hicks
"Heeg.ru" by sini-Kit
TiddlyMap Plugin by Felix Küppers
"In My Socks" by Jed Carty
"TiddlyWiki guide FR" by Sylvain Naudin
"TiddlyWiki5 Bourbon" by mkt_memory
"TiddlyWiki5^2 documenting while learning TiddlyWiki5" by Iannis Zannos
"CouchDB Adaptor" by William Shallum
Eucaly's Tiddly World
TiddlyClip by buggyjay
Plugins by TheDiveO
"TiddlyWiki for Scholars" by Alberto Molina
"Wills Q&D gTD" by Matabele
"TWeb.at" by Mario Pietsch
MathJax Plugin by Martin Kantor
"TiddlyWiki Notes" by James Anderson
"TiddlyWiki 舞" by Bram Chen
"BJTools" by buggyj
"TiddlyWiki5 Coding" by Chris Hunt
"BrainTest - tools for a digital brain" by Danielo Rodriguez
"TiddlyWiki5 Playground" by Ton Gerner
"TW5 Magick" by Stephan Hradek
"TiddlyWiki Posts" by Jeffrey Kishner
[list[Days of the Week]rest[]]
[list[Days of the Week]rest[3]]
Z Y X W V U T S R Q P O +[rest[5]]
Introduction
Content and Attributes
<$reveal> widget is displayed according to the rules given above.Attribute Description state A TextReference containing the state tag Overrides the default HTML element tag ( <div> in block mode or <span> in inline mode)type The type of matching performed: match, nomatch or popup text The text to match when the type is match and nomatch class An optional CSS class name to be assigned to the HTML element
» Set to tc-popup-keep to make a popup "sticky", so it won't close when you click inside of itstyle An optional CSS style attribute to be assigned to the HTML element position The position used for the popup when the type is popup. Can be left, above, aboveright, right, belowleft or below default Default value to use when the state tiddler is missing animate Set to "yes" to animate opening and closure (defaults to "no") retain Set to "yes" to force the content to be retained even when hidden (defaults to "no") Examples
Simple content reveal
<$button set="$:/state/SampleReveal1" setTo="show">Show me</$button>
<$button set="$:/state/SampleReveal1" setTo="hide">Hide me</$button>
<$reveal type="match" state="$:/state/SampleReveal1" text="show">
! This is the revealed content
And this is some text
</$reveal>Accordion or Slider
<$reveal type="nomatch" state="$:/state/SampleReveal2" text="show">
<$button set="$:/state/SampleReveal2" setTo="show">Show me</$button>
</$reveal>
<$reveal type="match" state="$:/state/SampleReveal2" text="show">
<$button set="$:/state/SampleReveal2" setTo="hide">Hide me</$button>
! This is the revealed content
And this is some text
</$reveal>Popup
<$button popup="$:/SamplePopupState">Pop me up!</$button>
<$reveal type="popup" state="$:/SamplePopupState">
<div class="tc-drop-down">
! This is the popup
And this is some text
</div>
</$reveal>How to use text references with field content
jeremy is populated with text tiddlywiki, a message will be displayed.<$reveal type="match" state="!!jeremy" text="tiddlywiki">
~TiddlyWiki!
</$reveal>
purpose reverse the order of the input titles input a selection of titles parameter none output the input, in reverse order Introduction
Enabling Safe Mode
#:safe. For example:How Safe Mode Works
SAFE: , thus restoring the underlying shadow tiddler
purpose filter the input by date input a selection of titles suffix F = the name of a date field, defaulting to modifiedparameter D = a date, in the format YYYYMMDDoutput those input tiddlers in which field F has the value D, ignoring timeD is not a valid date, the output is empty.D may include a time of day, but this is ignored.--savetiddlers <필터> <경로이름> ["noclean"]output 하위 디렉터리로 상대적으로 해석됩니다. --output 명령은 다른 디렉터리로 직접 출력하는 데 사용할 수 있습니다.TiddlySpot saver can also be used to save changes to a simple PHP script that you can run on most hosting providers.TiddlyHome_0.1.2.zip from https://code.google.com/archive/p/bidix/downloadsstore.php from under the unzipped subdirectory _th\lib$USERS = array( 'UserName1'=>'Password1', etc) and replace Username1 and Password1 with your desired username and passwordName Description Server URL The full URL to the store.php file on your server Upload filename The filename used to save the TiddlyWiki (defaults to index.html) Upload directory The relative path from store.php to the directory used for saving the file Backup directory The relative path from store.php to the directory used for backups Note about maximum size
.htaccess or htaccess file (depending on system) to increase the value of the maximum upload and/or post size. Check with your Web Host Provider for your particular settings. Be sure also to make backups before experiementing. On some systems, the settings might look like:php_value upload_max_filesize 4M
php_value post_max_size 6M/sdcard/andtidwiki.html or .htm extension*.hta.http://tiddlywiki.com/empty.html.html).html or .htm extensionProblems with saving on TiddlySpot
.html or .htm extension.html or .htm extension.html or .htm extension$:/core/templates/tiddlywiki5.html$(publishFilter)$ that allows the filter to be customised via a global variableScript Files
bin folder that you can use to automate common tasks, or as a useful starting point for your own scripts. See Scripts for building tiddlywiki.com for details of the scripts used to build and release http://tiddlywiki.com/.serve: serves tw5.com./bin/serve.sh -h
./bin/serve.sh [edition dir] [username] [password] [host] [port]./bin/serve.cmd -h
./bin/serve.cmd [edition dir] [username] [password] [host] [port]tw5.com-server edition. By default, the Node.js serves on port 8080. If the optional username parameter is provided, it is used for signing edits. If the password is provided then HTTP basic authentication is used. Run the script with the -h parameter to see online help.http://127.0.0.1:8080 in a browser.test: build and run teststest edition of TiddlyWiki on the server to perform the server-side tests and to build test.html for running the tests in the browser.lazy: serves tw5.com with lazily loaded images./bin/lazy.sh <username> [<password>]./bin/lazy.cmd <username> [<password>]tw5.com-server edition content with LazyLoading applied to images.2bld: builds TiddlyWiki 2.6.5diff is used for *nix, fc for Windows).Introduction
Content and Attributes
<$scrollable> widget is displayed within a pair of wrapper DIVs. If the inner DIV is larger then it scrolls within the outer one. CSS is used to specify the size of the outer wrapper.Attribute Description class The CSS class(es) to be applied to the outer DIV fallthrough See below tm-scroll message because the inner DIV fits within the outer DIV, then by default the message falls through to the parent widget. Setting the fallthrough attribute to no prevents this behaviour.Examples
.tc-scrollable-demo {
border: 1px solid <<colour message-border>>;
background-color: <<colour message-background>>;
padding: 1em;
height: 400px;
position: relative;
}<$scrollable class='tc-scrollable-demo'>
<$list filter='[!is[system]]'>
<$view field='title'/>: <$list filter='[all[current]links[]sort[title]]' storyview='pop'>
<$link><$view field='title'/></$link>
</$list>
</$list>
</$scrollable>
purpose filter the input by searching tiddler content input a selection of titles suffix F = optionally, the name of a fieldparameter one or more search terms, separated by spaces output those input tiddlers in which all of the search terms can be found in the value of field F! outputthose input tiddlers in which not all of the search terms can be so found search operator is similar to regexp but less powerful.tags, text and title fields.Standard search
Advanced searching
title. The output of [title[A]title[B]] is just B. But the field operator is a modifier, so [title[A]field:title[B] outputs nothing at all.
Introduction
<option> and <optgroup> elements.
Every time the user selects a new value in the menu, the selected value is written to the text of a specified tiddler field or index and any ActionWidgets within the actions attribute are triggered. Conversely, if the tiddler value is changed independently the select widget is automatically updated to reflect the new value.<$select tiddler=<<qualify 'select-demo'>> default='HelloThere'>
<$list filter='[all[shadows+tiddlers]tags[]sort[title]]'>
<option value=<<currentTiddler>>><$view field='title'/></option>
</$list>
</$select>Content and Attributes
<$select> widget should be one or more HTML <option> or <optiongroup> elements that provide the available values.Attribute Description tiddler The title of the tiddler containing the value to be displayed/modified by the select widget (defaults to the current tiddler) field The field name for the value in the current tiddler (defaults to "text") index The index of a property in a DataTiddler (takes precedence over the field attribute) class CSS classes to be assigned to the HTML select element default Default value to be used if the tiddler, field or index specifies a missing value multiple If present, switches to multiple selection mode size The number of rows to display in multiple selection mode actions A string containing ActionWidgets to be triggered when the key combination is detected Examples
Simple Lists
<$select tiddler='$:/SiteTitle'>
<option>A Tale of Two Cities</option>
<option>A New Kind of Science</option>
<option>The Dice Man</option>
</$select>Value lists
value attribute has been used to specify the text that should be used as the value of the entry instead of the display text.<$select tiddler='$:/SiteTitle'>
<option value='cities'>A Tale of Two Cities</option>
<option value='science'>A New Kind of Science</option>
<option value='dice'>The Dice Man</option>
</$select>Option Groups
<optgroup> element<$select tiddler='$:/SiteTitle'>
<optgroup label='Fiction'>
<option value='cities'>A Tale of Two Cities</option>
<option value='dice'>The Dice Man</option>
</optgroup>
<optgroup label='Non-fiction'>
<option value='science'>A New Kind of Science</option>
<option value='recursive'>The Recursive Universe</option>
</optgroup>
</$select>Generated Lists
<$select tiddler='$:/generated-list-demo-state'>
<$list filter='[tag[TableOfContents]]'>
<option><$view field='title'/></option>
</$list>
</$select>
<$tiddler tiddler={{$:/generated-list-demo-state}}>
<$transclude mode='block'/>
</$tiddler>Nested Lists
<optgroup> elements, and the inner one generates <option> elements:<$select tiddler='$:/generated-list-demo-nestedstate' field='type' default='text/vnd.tiddlywiki'>
<$list filter='[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]each[group]sort[group]]'>
<optgroup label={{!!group}}>
<$list filter='[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]group{!!group}] +[sort[description]]'>
<option value={{!!name}}><$view field='description'><$view field='title'/></$view> (<$view field='name'/>)</option>
</$list>
</optgroup>
</$list>
</$select>Multiple Selections
multiple keyword to specify that we should be able to select multiple items.<$select tiddler='$:/generated-list-demo-state' field='testing' multiple size='8'>
<$list filter='[tag[TableOfContents]]'>
<option><$view field='title'/></option>
</$list>
</$select><br />
<$list filter='[list[$:/generated-list-demo-state!!testing]]'>
<$view field='title' /><br />
</$list>
GET, PUT 및 DELETE의 기본 HTTP 운영을 지원합니다.--server <포트> <루트티들러> <렌더형식> <제공형식> <사용자이름> <비밀번호> <호스트> <경로접두어>--server 8080 $:/core/save/all text/plain text/html MyUserName passw0rd--server 8080 $:/core/save/all text/plain text/html "" "" 192.168.0.245currentTiddler 변수 집합으로 틀 티들러의 내용을 티들러의 그룹의 지정된 필드에 설정합니다.--setfield <필터> <필드이름> <틀제목> <렌더형식>favicons in the Browser
favicons on the Server
/favicon.ico.Introduction
Content and Attributes
<$set> widget is the scope for the value assigned to the variable.Attribute Description name The name of the variable to assign (defaults to "currentTiddler") value The value to assign to the variable if the filter is missing or not empty filter An optional filter to be evaluated and assigned to the variable (see below) select New in 5.1.14 An optional zero-based index of the item to return from the filter output (see below) emptyValue The value to assign to the variable if the filter is present and evaluates to an empty list (see below) Simple Variable Assignment
<$set name="myVariable" value="Some text">
<$text text=<<myVariable>>/>
</$set><$set name=<<anotherVariable>> value={{template!!text}}>
<$text text=<<myVariable>>/>
</$set>Conditional Variable Assignment
<$set name="myVariable" filter="[all[current]field:title[myMagicTitle]]" value="It's magic" emptyValue="It's not magic">
<$text text=<<myVariable>>/>
</$set>Filtered List Variable Assignment
<$set name="myVariable" filter="[tag[HelloThere]]">
<$text text=<<myVariable>>/>
</$set>Filtered Item Variable Assignment
<$set name="myVariable" filter="[tag[HelloThere]]" select="0">
<$text text=<<myVariable>>/>
</$set>
purpose select the plugin titles that contain the input shadows input a selection of shadow titles parameter none output the plugins that contain the input tiddlers https://www.dropbox.com/s/<gobbledegook>/mywiki.htmlhttps://dl.dropboxusercontent.com/s/<gobbledegook>/mywiki.htmlhttps://dl.dropboxusercontent.com/s/<gobbledegook>/mywiki.html (open)cla-individual.md or cla-entity.md, with the date in the format (YYYY/MM/DD).Jeremy Ruston, @Jermolene, 2011/11/22
purpose sort the input by text field input a selection of titles parameter F = the name of a field, defaulting to titleoutput the input, sorted into ascending order by field F, treating field values as text! outputthe input, likewise sorted into descending order [list[Days of the Week]sort[]]
[list[Days of the Week]!sort[]]
one two Three four +[sort[]]
[prefix[Tiddl]sort[text]]
[has[created]sort[created]limit[10]]
10 6 4 9 3 2 8 +[sortby[1 2 3 4 5 6 7 8 9 10]]
Friday Tuesday Monday Thursday Sunday +[sortby{Days of the Week!!list}]
1 Mon 5 Fri 4 Tue Sun 2 +[sortby{Days of the Week!!short}]
purpose sort the input by text field, treating upper and lower case as different input a selection of titles parameter F = the name of a field, defaulting to titleoutput the input, sorted into ascending order by field F, treating field values as text! outputthe input, likewise sorted into descending order one two Three four +[sortcs[]]
one two Three four +[!sortcs[]]
Abbreviation Meaning Notes e.g. for example with a dot after each letter i.e. that is to say with a dot after each letter etc and so on without a dot
purpose select a delimited prefix from each input title input a selection of titles parameter S = a string of characters marking the end of the prefixoutput the prefix, up to and including S, of each input titleS contributes everything up to and including S.S simply contributes itself to the output./ as the parameter.<$list filter="[list[$:/StoryList]]" history="$:/HistoryList" template="$:/core/ui/ViewTemplate" editTemplate="$:/core/ui/EditTemplate" storyview={{$:/view}} />list field of the tiddler $:/StoryList. If a tiddler is added or removed from that list then it is automatically reflected in the displayed list<$list filter="[list[$:/StoryList]]" history="$:/HistoryList" storyview="pop">
<$button message="tm-close-tiddler" class="tc-btn-invisible tc-btn-mini">×</$button> <$link to={{!!title}}><$view field="title"/></$link>
</$list>qualify macro.
storyTiddler to the value of the currentTiddler variable. This in turn will have been set by a $list widget in the relevant part of the page template.storyTiddler is undefined outside the story river, such as in the sidebar.
New in 5.1.14
purpose apply JavaScript string encoding to a string input a selection of titles output the input with JavaScript string encodings applied @@.myStyle
* List One
* List Two
@@
<ul class="myStyle"><li>List One</li><li>List Two</li></ul>
@@background-color:red;
* List One
* List Two
@@
<ul style="background-color:red;"><li>List One</li><li>List Two</li></ul>
@@.tc-tiddler-frame
@@width:400px;
Some text
@@
<p class="tc-tiddler-frame" style="width:400px;">Some text
</p>
<<box-shadow shadow>>x-box-shadow properties<<filter filter>>x-filter properties<<transition transition>>x-transition properties<<transform-origin origin>>x-transition-origin properties<<background-linear-gradient gradient>>x-linear-gradient values of the background-image property
purpose filter the input titles by how they end input a selection of titles parameter S = a string of charactersoutput those input titles that end with S! outputthose input tiddlers that do not end with SS, capital and lowercase letters are treated as different.Available system tags
System tags in use
$:/; such tiddlers are automatically hidden from most operations. They don't show up in lists or search results, but linking to one directly works in the usual way.toctoc-expandabletoc-selective-expandabletoc-tabbed-internal-nav and toc-tabbed-external-navtoc-tabbed-internal-navtoc-tabbed-external-navStructure
list field of the parent tag tiddler. They can also be ordered by the macro's sort parameter.caption field of a tiddler if it has one, or the tiddler's title otherwise.toc-link field with the the value no. In the examples, the SecondThree tiddler is set up like this. Clicking such a tiddler in the tree causes its branch to expand or collapse.<ol> elements always have the class tc-toc. Expandable trees have the additional class tc-toc-expandable. Selectively expandable trees (including those in the two-panel browser) have tc-toc-selective-expandable.Parameters
sort[title][tag[$tag$]$sort$]toc-tabbed-internal-nav and toc-tabbed-external-nav take additional parameters:$:/temp/toc/selectedTiddler. It is recommended that this be a system tiddlerContents.<div class="tc-table-of-contents">
<<toc "Contents">>
</div>
Basics
|!Cell1 |!Cell2 |
|Cell3 |Cell3 |Cell1 Cell2 Cell3 Cell3 Cell Alignment
|Left aligned content |
| Right aligned content|
| Centred content |
|+++ a very wide column so we can see the alignment +++|Left aligned content Right aligned content Centred content +++ a very wide column so we can see the alignment +++ Cell vertical Alignment
^ for top alignment or a , for bottom alignment as the first character of a cell. The normal horizontal alignment is still possible. For example:|^top left |^ top center |^ top right|
|middle left | middle center | middle right|
|,bottom left |, bottom center |, bottom right|:: ::::::::::::::::::::::::::: ::::::::::::::::::::::::::: ::::::::::::::::::::::::::: :: ::
::top left top center top right ::
::::
::middle left middle center middle right ::
::::
::bottom left bottom center bottom right ::
:::: ::::::::::::::::::::::::::: ::::::::::::::::::::::::::: ::::::::::::::::::::::::::: :: ^or a , as the first character of a left aligned cell, you can use HTML escaping:^^ ,, Cell Merging
~. To merge a cell with the one to its left use the text <. To merge one to its right use >. For example:|Cell1 |Cell2 |Cell3 |Cell4 |
|Cell5 |Cell6 |Cell7 |<|
|Cell5 |~|Cell7 |Cell8 |
|>|Cell9 |Cell10 |Cell11 |Cell1 Cell2 Cell3 Cell4 Cell5 Cell6 Cell7 Cell5 Cell7 Cell8 Cell9 Cell10 Cell11 Table Classes, Captions, Headers and Footers
|myclass anotherClass|k
|This is a caption |c
|Cell1 |Cell2 |
|Cell3 |Cell3 |
|Header|Header|h
|Footer|Footer|fCell1 Cell2 Cell3 Cell3 Header Header Footer Footer caption field of a tiddler if it has one, or the tiddler's title otherwise. If specified, the tabs display the tooltip field of a tiddler as the respective button tooltip.class parameter to tc-vertical.Parameters
$:/state/tab. It is recommended that this be a system tiddlerdiv elements. Multiple classes can be separated with spacescurrentTab variable.currentTiddler variable is not affected by the tabs macro. This can put you in trouble if the list of tabs includes tiddlers that depend on the value of the currentTiddler, for example tiddlers listing children based on its own name. To overcome this problem you can use a TemplateTiddler like the following:<$tiddler tiddler=<<currentTab>>>
<$transclude mode="block" />
</$tiddler>
```
<<.macro-examples "tabs">>
Parameters
purpose filter the input by tag input a selection of titles suffix S = New in 5.1.14 optional strict flagparameter T = the title of a tagoutput those input tiddlers that have tag T! outputthose input tiddlers that do not have tag Tlist field and the tiddlers' list-before and list-after fields.T is empty depends on the settings of the S optional suffix:T is missing and S is either missing or set to "loose", then the output of tag is empty, and the output of !tag is a copy of the input.T is missing and S is set to "strict", then the output of both tag and !tag is a copy of the inputParameters
Set a tag's colour and icon
Change the order in which tags are listed
list field to the tag tiddler, and set its value to be a list of the tiddlers in that order.
purpose find the tiddlers that have the input tags input a selection of tags parameter none output the titles of any tiddlers that carry the input tags
purpose select all tags of the input tiddlers input a selection of titles parameter none output all the tags carried by the input tiddlers tags field) and then dominantly appended to the operator's output.task, with those that are completed also tagged done. In this way it is straightforward to generate task lists.Outstanding tasks
Completed tasks
!!)##)tiddlerTitle - the text field of the specified tiddlertiddlerTitle!!field - a tiddler field (eg, modified, modifier, type etc)!!field - a field of the current tiddlertiddlerTitle##propertyIndex - extracts a named property from DataTiddlers<$list filter="[tag{MyTag!!name}]"/>)<$widget attrib={{Title!!description}}/>){{MyTiddler!!title}})state attribute of the RevealWidget and the LinkCatcherWidgetIntroduction
Examples
<$button>
<$action-listops $tiddler="ListopsData" $index="DataIndex" $filter="[list[Days of the Week]]"/>
Get days-of-the-week
</$button>
<$button>
<$action-listops $tiddler="ListopsData" $index="DataIndex" $filter="[[]]"/>
Clear
</$button>
{{ListopsData}}DataIndex:
<$button>
<$action-listops $tiddler="ListopsData" $index="DataIndex" $subfilter="one two +[putbefore:2[Wednesday]]"/>
Put 2 Items Before Wednesday
</$button>
<$button>
<$action-listops $tiddler="ListopsData" $index="DataIndex" $subfilter="four five +[putafter:2[Wednesday]] three +[putbefore[Wednesday]]"/>
Put One Item Before & Two Items After Wednesday
</$button>
{{ListopsData}}DataIndex:
<$button>
<$action-listops $tiddler="ListopsData" $index="DataIndex" $subfilter="[[---o]] [[o---]] +[replace:2{!!marker}]"/>
Replace '!!marker' with 2 Items
</$button>
<$button>
<$action-listops $tiddler="ListopsData" $index="DataIndex" $subfilter="[{!!item1}] [{!!item2}] [{!!item3}] +[putfirst:3[]]"/>
Put 3 Items First
</$button>
{{ListopsData}}DataIndex:
|list: |<$view field="list"/> |
<$button>
<$action-listops $tiddler="ListopsData" $index="DataIndex" $subfilter="+[allbefore:include[Wednesday]] +[prepend{!!list}]"/>
Prepend '!!list' to items before 'Wednesday'
</$button>
<$button>
<$action-listops $tiddler="ListopsData" $index="DataIndex" $subfilter="+[remove:2{!!list}]"/>
Remove first two items in '!!list' from current list
</$button>
<$button>
<$action-listops $tiddler="ListopsData" $index="DataIndex" $subfilter="+[!remove:1{!!list}]"/>
Remove last item in '!!list' from current list
</$button>
{{ListopsData}}list: Yesterday Today Tomorrow DataIndex:
<$button>
<$action-listops $tiddler="ListopsData" $index="DataIndex" $filter="[[]]" $subfilter="+[append:3{!!numbers}]"/>
Setup some numbers
</$button>
<$button>
<$action-listops $tiddler="ListopsData" $index="DataIndex" $subfilter="+[!append:6{!!numbers}]"/>
Append more numbers
</$button>
<$button>
<$action-listops $tiddler="ListopsData" $index="DataIndex" $subfilter="+[putfirst:2[]]"/>
Move last 2 items to the head
</$button>
<$button>
<$action-listops $tiddler="ListopsData" $index="DataIndex" $subfilter="+[putlast[]]"/>
Move the head to the last item
</$button>
{{ListopsData}}DataIndex:
Horror Stories
The first rule of using TiddlyWiki is:
Examples
thumbnail-right macro used to create a video thumbnail that floats to the right of the text<<thumbnail-right link:"Introduction Video" image:"Introduction Video Thumbnail.jpg" caption:"Introduction to ~TiddlyWiki" icon:"{{$:/core/images/video}}" color:"red">>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
before and after[list[Days of the Week]before{!!title}]
[list[Days of the Week]after{!!title}]
List Widget or Tiddler Fields.Keyboard Shortcuts or Tiddler Fields. Such titles are used to tag more specific tiddlers within the category.List Widget, tag Operator.addprefix Operator. This helps the reader scan a list of links to find a particular tiddler.JavaScript where that is the standard spelling.Ten reasons to switch to TiddlyWiki. These titles use sentence case, i.e. only the first word (and any proper names) starts with a capital letter.How to edit a tiddler. Avoid titles like Editing tiddlers, because a less fluent English speaker could misunderstand that as the name of a category of tiddlers.
- (dash), _ (underscore) and . (period).Field Name Reference Description titleTitleField 티들러의 고유 이름 textTextField 티들러의 본문 modifiedModifiedField 티들러가 마지막으로 수정된 날짜 및 시간 modifierModifierField 티들러를 마지막으로 수정한 사람과 관련된 티들러 제목 createdCreatedField 티들러가 만들어진 날짜 creatorCreatorField 티들러를 만든 사람의 이름 tagsTagsField 티들러와 연관된 태그의 목록 typeTypeField 티들러의 내용 형식 listListField 티들러와 연관된 티들러 제목의 정렬된 목록 captionCaptionField 탭이나 버튼에 표시할 텍스트 Field Name Reference Description colorColorField 티들러와 연관된 CSS 색 값 descriptionDescriptionField 플러그인에 대한 설명문, 또는 모달 대화 상자 draft.ofDraftOfField 초안 티들러에 대해, 초안인 티들러의 제목을 포함 draft.titleDraftTitleField 초안 티들러에 대해, 티들러의 제안된 새 제목을 포함 footerFooterField 마법사를 위한 바닥글 텍스트 libraryLibraryField "yes"로 설정하면 티들러가 자바스크립트 라이브러리로 저장해야하는지 나타냄 nameNameField 플러그인 티들러와 연관된 사람이 읽을 수 있는 이름 plugin-priorityPluginPriorityField 플러그인 티들러의 우선 순위를 나타내는 숫자 값 plugin-typePluginTypeField 플러그인 티들러에서 플러그인의 형식 sourceSourceField 티들러와 연관된 원본 URL subtitleSubtitleField 마법사를 위한 부제목 텍스트 Field Name Reference Description bagBagField 티들러의 유래가 된 가방 이름 revisionRevisionField 서버에 열린 티들러의 판 .meta file formatted as a sequence of name:value pairs:title: TheTitle
modifier: someoneTiddlyWeb-style .tid files
title: MyTiddler
modifier: Jeremy
This is the text of my tiddler.title: MyTiddler
modifier: Jeremy
text: This is the text of my tiddler.application/x-tiddler is used internally for these filesTiddlyWiki
<DIV> .tiddler files*.tiddler files look like this:<div title="AnotherExampleStyleSheet" modifier="blaine" created="201102111106" modified="201102111310" tags="examples" creator="psd">
<pre>Note that there is an embedded <pre> tag, and line feeds are not escaped.
And, weirdly, there is no HTML encoding of the body.</pre>
</div>*.tiddler files are not exactly the same as the tiddlers inside a TiddlyWiki HTML file where they are HTML encoded.*.tiddler files more closely matched the store format used by TiddlyWiki at the time:<div tiddler="AnotherExampleStyleSheet" modifier="JeremyRuston" modified="200508181432" created="200508181432" tags="examples">This is an old-school .tiddler file, without an embedded <pre> tag.\nNote how the body is "HTML encoded" and new lines are escaped to \\n</div>application/x-tiddler-html-div is used internally for these filesTiddlyWeb-style JSON files
name:value properties. All field values must be specified as strings.[
{
"title": "First Tiddler",
"text": "Text of first tiddler",
"tags": "one two [[t h r e e]]"
},{
"title": "Second Tiddler",
"text": "Text of second tiddler",
"modified": "20150216171751154"
}
]application/json is used internally for these filesTiddlyWiki HTML files
<DIV> format.<div id="storeArea"> containing tiddler DIVs as explained above. For example:<div id="storeArea">
<div created="20130302085406905" modified="20130302084548184" tags="Examples" title="A tiddler title">
<pre>HTML encoded text of tiddler
</pre>
</div>
<div created="20140315085406905" modified="20140321084548184" tags="One Two [[Three with Space]]" title="Another title" customfield="field value">
<pre>Text of this tiddler
</pre>
</div>
</div>[links[]] - returns the titles of the tiddlers that are linked from the currently selected tiddler(s)[backlinks[]] - returns the titles of the tiddlers that link to the currently selected tiddler(s)Link description Link appearance To a tiddler that exists LikeThis To a tiddler that doesn't exist LikeThis To a shadow tiddler that has not been overridden LikeThis To a shadow tiddler that has been overridden by an ordinary tiddler LikeThis title field, but useful tiddlers also have a text field, and some or all of the standard fields listed in TiddlerFields.Introduction
Content and Attributes
Attribute Description tiddler The title of the tiddler to become the new current tiddler class CSS classes to be added to the generated elements CSS Class Variables
tc-tiddler-exists or...tc-tiddler-missing depending on whether the tiddler existstc-tiddler-shadow if the tiddler is a shadow tiddler tc-tiddler-system if the tiddler is a system tiddlertc-tagged-{tagname},
e.g. tc-tagged-introduction
Note: tag names are URI encoded which means that the tag $:/tags/Macro appears as the CSS class tc-tagged-%24%3A%2Ftags%2FMacro. See How to apply custom styles by tag for more details<$tiddler tiddler="MyOtherTiddler">
<div class=<<missingTiddlerClass>>>
<$transclude/>
</div>
</$tiddler>Instructions
Source
New Features
New Architecture
Coming Soon
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.76 Safari/537.36 TiddlyDesktop/0.0.6TiddlyDesktop Release 0.0.8
<myspace>tw5tiddlywebhttp://<myspace>.tiddlyspace.com/tw5Instructions
Release 5.1.13
Bug Fixes
Node.js Bug Fixes
.tid extension added to tiddler filenamesOther Improvements
Contributors
Introduction
tiddlywiki.files JSON file in a sub-folder within a TiddlyWiki folder overrides the usual logic for recursively scanning the folder for tiddler files. Instead, the tiddlywiki.files file specifies instructions for loading tiddlers from specific files and folders.tiddlywiki.files processing were introduced in Release 5.1.14.Field overrides
tiddlywiki.files files include the ability to override or customise the values of fields with a fields object.Tiddlers section
tiddlers array support the following properties:tiddlywiki.files file)true, the file will be treated as a tiddler file and deserialised to extract the tiddlers. Otherwise, the raw content of the file is assigned to the text field without any parsingtext fieldtext field of the fields object to {"prefix":"<prefixvalue>"}.Directories section
directories array may take the following forms:tiddlywiki.files file). The directory is recursively searched for tiddler filestiddlywiki.files file). Note that the directory is not recursively searched; sub-directories are ignoredtrue, the file will be treated as a tiddler file and deserialised to extract the tiddlers. Otherwise, the raw content of the file is assigned to the text field without any parsing.meta – see TiddlerFiles.Examples
tiddlywiki.files must be placed in their own sub-directory of the wiki folder.tiddlywiki.files files in the main TiddlyWiki 5 GitHub repository. Importing a folder of PDFs
.pdf from a folder specified by a relative path. Each tiddler is set up for LazyLoading with the following fields:application/pdf$:/tags/AttachedFile{
"directories": [
{
"path": "../../../input/pdfs",
"filesRegExp": "^.*\\.pdf$",
"isTiddlerFile": false,
"fields": {
"title": {"source": "basename-uri-decoded"},
"created": {"source": "created"},
"modified": {"source": "modified"},
"type": "application/pdf",
"tags": ["$:/tags/AttachedFile"],
"text": "",
"_canonical_uri": {"source": "filename", "prefix": "pdfs/"}
}
}
]
}tiddlywiki.info file in the root of the wiki folder. It should contain a JSON object comprising the following properties:includeWikis
build
tiddlywiki.info file.config
Example
{
"plugins": [
"tiddlywiki/tiddlyweb",
"tiddlywiki/filesystem"
],
"includeWikis": [
"../tw5.com"
],
"build": {
"index": [
"--rendertiddler","$:/core/save/all","index.html","text/plain"],
"favicon": [
"--savetiddler","$:/favicon.ico","favicon.ico",
"--savetiddler","$:/green_favicon.ico","static/favicon.ico"]
},
"config": {
"retain-original-tiddler-path": true
}
}Building TiddlyWikiClassic
tiddlywiki/classictools plugin, containing a deserializer module which allows tiddlers to be loaded from TiddlyWiki 2.x.x .recipe filesstripcomments format for the ViewWidget, which strips single line JavaScript comments starting //#stripTitlePrefix='yes' attribute of the FieldsWidget, which removes prefixes wrapped in curly braces from the title attribute{tiddler}HelloThere would be transformed to HelloThereUsage
node ../../tiddlywiki.js \
--verbose \
--load <path_to_recipe_file> \
--rendertiddler $:/core/templates/tiddlywiki2.template.html <path_to_write_index_file> text/plain \
|| exit 1TiddlyWiki Core Version
Given a version number MAJOR.MINOR.PATCH, increment the:
MAJOR version when you make incompatible API changes,
MINOR version when you add functionality in a backwards-compatible manner, and
PATCH version when you make backwards-compatible bug fixes.
Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format.Alpha and Beta versions
5.0.1-alphaPATCH version number. This breaks the strict semantics of versioning because PATCH increments are supposed to be reserved for compatible changes.Interim versions
prerelease.Plugin Versions
Wiki Folder Structure
Plugin processing
{
"plugins": [
"tiddlywiki/slider",
"tiddlytools/chooser"
]
}plugins folder. Plugins can also be included manually by copying them into the plugins subfolder of the wiki.Processing of
tiddlers foldertiddlers folder are read into the wiki at startup. Sub-folders are scanned recursively for TiddlerFiles. Newly created tiddlers are stored in TiddlerFiles directly beneath the tiddlers folder, unless configured otherwise.tiddlers folder can be overridden by providing a JSON file called tiddlywiki.files – see tiddlywiki.files Files.Parameters
DDth MMM YYYYtag[MyTag]modifiedsubfilter and limit parameters are spliced as follows:[!is[system]$subfilter$has[$dateField$]!sort[$dateField$]limit[$limit$]eachday[$dateField$]]GettingStarted [[Discover TiddlyWiki]] Upgrading
purpose select a single title input ignored ! inputa selection of titles parameter T = a tiddler titleoutput a selection containing only T! outputthe input, but with tiddler T filtered out if it exists in the wiki[title[An Example]] can be shortened to [[An Example]], because title is the default filter operator.title is a constructor (except in the form !title), but field:title is a modifier.Introduction
Attributes
Attribute Description tiddler The title of the tiddler to transclude (defaults to the current tiddler) field The field name of the current tiddler (defaults to "text"; if present takes precedence over the index attribute) index The index of a property in a DataTiddler subtiddler Optional SubTiddler title when the target tiddler is a plugin (see below) mode Override the default parsing mode for the transcluded text to "block" or "inline" Parsing modes
mode attribute.# Item one
#<$transclude tiddler="B"/>
# Item two# Item one - a
# Item one - b# Item one
#<$transclude tiddler="B" mode="block"/>
# Item twoSubTiddler Access
Tiddler Field Transclusion
{{MyTiddler}}<$text text={{MyTiddler}}/>{{{ [tag{TiddlerContainingMyTag}] }}}Variable/Macro Transclusion
<<myMacro param:"Value of parameter">><$text text=<<myMacro>>/>{{{ [tag<myMacro>] }}}Textual Substitution
Simple Transclusion
This is the content of TiddlerA: {{TiddlerA}}Usage
{{TiddlerA}} is a shortcut for {{TiddlerA!!text}}. This is because the default field for transclusion is text, but any other field can be used explicitly. For example, you can print the last time TiddlerA was modified using:TiddlerA was modified on {{TiddlerA!!modified}}The current tiddler was modified on {{!!modified}}Recursion Errors
{{!!text}} or {{}} causes an error (Recursive transclusion error in transclude widget), because it does not make sense to include the content of the current tiddler into the content of the current tiddler (that is, into itself). Whenever you encouter this error message, it means that you are trying to include something into itself, directly or indirectly (for example if tiddler A transcludes tiddler B which transcludes tiddler C which, in turn, transcludes tiddler A).Learning More
Introduction
{{MyTiddler}} transcludes a single tiddler{{MyTiddler||TemplateTitle}} displays the tiddler through a specified TemplateTiddler{{||TemplateTitle}} displays the specified template tiddler without altering the current tiddlerTranscluding Text References
{{MyTiddler!!field}} transcludes a specified field of a tiddler{{!!field}} transcludes a specified field of the current tiddler{{MyTiddler##index}} transcludes a specified indexed property of a DataTiddler{{##index}} transcludes a specified indexed property of the current DataTiddlerFiltered Transclusion
{{{ [tag[mechanism]] }}}
{{{ [tag[mechanism]] ||TemplateTitle}}}Generated Widgets
{{MyTiddler||MyTemplate!!myField}} generates the following pair of widgets:<$tiddler tiddler="MyTiddler">
<$transclude tiddler="MyTemplate" field="myField"/>
</$tiddler>$transclude widget to a string that identifies the position of that widget within the widget tree.qualify macro.
transclusion is:{|$:/core/ui/PageTemplate/sidebar|||}HelloThere is displayed in the story river, transclusion is set to:{HelloThere|HelloThere|||}We are
<$list
filter="[<transclusion>prefix[{|$:/core/ui/PageTemplate/sidebar|||}]]"
emptyMessage="in the story river.">
in the sidebar.
</$list>
We are in the sidebar instead.
Introduction
@@background-color:yellow;
Hello, my title is {{!!title}}
@@{{A}}. You should see the following content in tiddler B:{{!!title}} to refer to the target tiddler B, and not the source tiddler A.{{||A}}. The difference is that any TextReference which does not refer explicitly to a specific tiddler is applied to the current tiddler, that is, the target tiddler. As a result, tiddler B now looks as expected:Usage
{{<target>||<template>}}. The default <target> is the current tiddler (this is what we used in the above example).Examples
A predefined template to render tags nicely
$:/core/ui/TagTemplate to a tag in order to see it as a tag pill with a drop-down menu:{{Transclusion||$:/core/ui/TagTemplate}}tiddlywiki editions/translators --server and visit http://127.0.0.1:8080/ in your browser.$:/language/, for example:"Microblogging con Tiddlywiki" by Juan
"Un wiki sur votre BiblioBox avec TiddlyWiki" from A Penguin in Redmond
"TW5 Magick" by Stephan Hradek
"TW5 Tribal Knowledge" from Scott Kingery
"Install and run TiddlyWiki on a CentOS 6 VPS using Nginx" from RoseHosting
"Creating a baby journal with TiddlyWiki 5" from A Penguin in Redmond
"Shining Ark Using TiddlyWiki" by Helu
tm-import-tiddlers message causes the tiddler $:/Import (which lists the pending imports) to open in the story river.no, it isn't.no can be found in the upgrade plugin within the TiddlyWiki Upgrade Wizard. People can drag their wiki files onto the wizard without triggering the normal import display.
yes or no prior to transcluding such a button.tv-config-toolbar-text.
yes or no prior to transcluding such a button.tv-config-toolbar-icons.
src attribute on the HTML img element generated by the $image widget when the value of its source attribute is not the title of a tiddler.source attribute – equivalent to the image name specified in the shorthand syntax [img[source]]\define tv-get-export-image-link(src) http://www.tiddlywiki.com/$src$
[img[favicon.ico]]
href attribute on the HTML a element generated by the $link widget.tv-wikilink-template. If both that variable and this one exist, this one dominates.
href attribute on the HTML a element generated by the $link widget.uri_encoded parameter but percent-encoded again, i.e. with its % characters further converted to %25\define tv-wikilink-template() ../tiddlers/$uri_encoded$.html#$uri_encoded$.tv-get-export-link variable, which dominates over this one.
caption field:\define tv-wikilink-tooltip()
<$transclude field="tooltip">(<$transclude field="caption"/>)</$transclude>
\end
Here is a link to [[backlinks Operator]] with a custom tooltip.
$link widget.no, the widget suppresses the link and simply displays the text that would otherwise have served as the link.\define tv-wikilinks() no$link widget.$$$image/svg+xml
<svg xmlns="http://www.w3.org/2000/svg" width="150" height="100">
<circle cx="100" cy="50" r="40" stroke="black" stroke-width="2" fill="green" />
</svg>
$$$$$$.svg
<svg xmlns="http://www.w3.org/2000/svg" width="150" height="100">
<circle cx="100" cy="50" r="40" stroke="black" stroke-width="2" fill="red" />
</svg>
$$$$$$text/unknown
Some plain text, which will not be //formatted//.
$$$Some plain text, which will not be //formatted//.$$$text/vnd.tiddlywiki>text/html
This is ''some'' wikitext
$$$
$$$text/vnd.tiddlywiki>text/plain
This is ''some'' wikitext
$$$<p>This is <strong>some</strong> wikitext</p>
This is some wikitext
`...`) for fragments of WikiText, but not for the names of things like fields and widgets. These have their own macros.', not curly ’, and the ellipsis should be three separate dots ... rather than …." as the primary quotation mark, reserving ' for the rare case of a nested quotation.- as sentence punctuation. Instead, use a double hyphen – which TiddlyWiki renders as an en-dash – with a space on either side.Standalone Configuration
Client-Server Configuration
tiddlywiki.info file (it is in JSON format) and locate the plugins and themes section (see below){
"plugins": [
"tiddlywiki/codemirror"
],
"themes": [
"tiddlywiki/vanilla",
"tiddlywiki/snowwhite"
]
}
purpose discard any input titles that have tags input a selection of titles parameter none output those input tiddlers that have no tags ! outputthose input tiddlers that have at least one tag tags fieldtags field$:/UpgradeLibrary that contains the latest compatible versions of all plugins in the library$:/Import that is typed as a "pending import"Introduction
Online upgrading
Offline upgrading
Problems with Upgrades
Firefox Security Restrictions
Incompatible Customisations
npm update -g tiddlywikisudo npm update -g tiddlywikihttp://127.0.0.1:8080/.http://127.0.0.1:8080/path/to/my/wiki/:/path/to/my/wiki as the pathprefix argument of the ServerCommand$:/config/tiddlyweb/host that contains $protocol$//$host$/path/to/my/wiki/Installing and Configuring Babel
$ npm install --global babel-cli babel-presets-es2015package.json file with$ npm install --save-dev babel-cli babel-presets-es2015.babelrc and enter the following:{
"presets": [
"es2015"
]
}Compiling the Output
src and lib respectively. With Babel installed and working I can compile all the JavaScript in the src folder to the lib folder by running this command:$ babel src -d libImports and Exports
require a module through TiddlyWiki like so:var Widget = require('$:/core/modules/widgets/widget.js').widget;import { widget as Widget } from '$:/core/modules/widgets/widget.js';require things. This means you can not have an import statement in an if block or in a function. If that functionality is desired then you will have to go back to using the require() statement directly. But conciser that by doing so that you may be missing an oppertunity to make your code cleaner and better.exports variable you use the export keyword:export { MyWidget as mywidget };exports variable. Bable's export conversion plays well with this except with the default export.Classes
function MyWidget() {
Widget.call(this);
}
MyWidget.prototype = new Widget();
MyWidget.prototype.render = function(parent, nextSibling) {…};
// And so on…class MyWidget extends Widget {
render(parent, nextSibling) {…}
// And so on…
}Widget.execute() cruft using getters. I found this to be more readable then the typical mass assignment to this. It gave me the added benefit of allowing calculations in properties that normally would have conflated the execute() method. For example developing a compound property like so:class NameWidget extends Widget {
get title() { return this.getAttribute('title'); }
get firstName() { return this.getAttribute('first'); }
get lastName() { return this.getAttribute('last'); }
get fullName() { return `${this.title}. ${this.firstName} ${this.lastName}`; }
}Non Class Modules
export keyword. Here is a simple Startup Module:export function startup() {
// Do stuff here
}export const name = 'my-macro';
export const params = {};
export function run() {…}Polyfills
Example
/*\
title: $:/plugins/sukima/clock-widget.js
type: application/javascript
module-type: widget
A updating time stamp
\*/
import { widget as Widget } from '$:/core/modules/widgets/widget.js';
class ClockWidget extends Widget {
constructor(parseTreeNode, options) {
super(parseTreeNode, options);
this.logger = new $tw.utils.Logger('clock-widget');
}
render(parent, nextSibling) {
if (!$tw.browser) { return; }
this.logger.log('Rendering clock DOM nodes');
this.computeAttributes()
this.parentDomNode = parent;
this.domNode = $tw.utils.domMaker('div', {
document: this.document,
class: 'tc-clock-widget'
});
parent.insertBefore(this.domNode, nextSibling);
this.tick();
}
tick() {
this.logger.log('Tick!');
if (!document.contains(this.domNode)) {
// Apparently the widget was removed from the DOM. Do some clean up.
return this.stop();
}
this.start();
this.domNode.innerHTML = this.dateString;
}
start() {
if (!this.clockTicker) {
this.logger.log('Starting clock');
this.clockTicker = setInterval(this.tick.bind(this), 1000);
}
}
stop() {
this.logger.log('Stopping clock');
clearInterval(this.clockTicker);
this.clockTicker = null;
}
get dateString() {
const format = 'DDth MMM YYYY at hh12:0mm:0ss am';
return $tw.utils.formatDateString(new Date(), format);
}
}
export { ClockWidget as clock };{{{ [tag[mountain]] }}} to a tiddler will insert a list of all tiddlers tagged with mountain.Insert snippets
Create a snippet
$:/tags/Stylesheet. Try creating a custom stylesheet now with the following content in order to change the page background colour to red:html body.tc-body {
background: red;
}Overriding Theme Settings
html body.tc-body is more specific than body.tc-body.Ordering of stylesheets
<$list filter="[all[shadows+tiddlers]tag[$:/tags/Stylesheet]]"/>[all[shadows+tiddlers]tag[$:/tags/Stylesheet]]Stylesheet Types
text/css for stylesheets. This treats them as plain stylesheets, and ensures that TiddlyWiki doesn't apply any wiki processing to them.text/vnd.tiddlywiki. This allows full WikiText processing to be performed. Here is an example:\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline html
body.tc-body pre {
<<box-shadow "inset 0 1px 0 #fff">>
}\rules pragma at the top of the tiddler restricts the WikiText to just allow macros and transclusion. This avoids mistakenly triggering unwanted WikiText processing.<pre> tags to display them as a codeblock without affecting processing, including handling the inner macro.\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline html
<pre>body.tc-body pre {
<<box-shadow "inset 0 1px 0 #fff">>
}
</pre>Stylesheet Macros
image/svg+xml are interpreted as SVG images, and displayed and transcluded as self-contained <img> elements with the SVG embedded as a data URI in the src attribute.Embedding SVG tiddlers
{{Motovun Jack.jpg}}<img> element are that it is sandboxed; it can't use CSS styles from the parent document, for example. Neither can the image use WikiText features like transclusion.Embedding SVG elements
<svg> element directly. For example:<?xml version="1.0"?> directive.Including HTML or WikiText content in SVG images
<text> element:<foreignObject> element. For example:Transcluding SVG elements
Making curved text with SVG
readme.md files for inclusion in project folders, or HTML files for storage in GitHub Pages. Both features are demonstrated by TiddlyWiki5 itself.Generating
readme.md filesreadme.md file and display it. Note that it will not display full HTML files in this way, just static MarkDown files (this is a security measure). Happily MarkDown permits a safe subset of HTML, and thus to generate a readme.md file that is suitable for GitHub it is just necessary for TiddlyWiki5 to generate the content of the <body> element of an HTML document, and give it the appropriate filename.--rendertiddler ReadMe ./readme.md text/html./readme.md in the text/html format.<a> links to a relative URI consisting of the title of the tiddler. This behaviour can be overridden by defining the macro tv-wikilink-template, as is done at the top of the tiddler ReadMe:\define tv-wikilink-template() http://tiddlywiki.com/static/$uri_doubleencoded$.htmltiddlywiki --verbose --load mywiki.html --rendertiddler ReadMe ./readme.htmltiddlywiki from the command line boots the TiddlyWiki kernel, loads the core plugins and establishes an empty wiki store. It then sequentially processes the command line arguments from left to right. The arguments are separated with spaces.--.tiddlywiki [<wikipath>] [--<command> [<arg>[,<arg>]]]$set widget, and is then available to any of the children of that widget, including transcluded content. A $set widget can reuse an existing name, thus binding a different snippet to that name for the duration of the widget's children.$list widget also sets a particular variable (currentTiddler by default) to each listed title in turn.$name$ for a macro parameter transclusion and $(name)$ for a variable transclusion.dumpvariables macro lists all variables (including macros) that are available at that position in the widget tree.$macrocall widget.$(name)$ as a placeholder for which the value of the variable of that name will be substituted.Example: defining a variable
<$set name=animal value=zebra>
<<animal>>
</$set>
Example: defining a macro
\define pragma below defines a macro called tags-of-current-tiddler. The macro returns the value of the tiddler's tags field, and can be accessed from anywhere else in the same tiddler (or in any tiddler that imports it).\define tags-of-current-tiddler() {{!!tags}}
The tags are: <<tags-of-current-tiddler>>
Example: using a variable as a filter parameter
backlinks operator to list all tiddlers that link to this one.<<list-links filter:"[<currentTiddler>backlinks[]]">>
Introduction
Content and Attributes
<$vars> widget is the scope for the value assigned to the variable.Attribute Description {attributes not starting with $} Each attribute name specifies a variable name. The attribute value is assigned to the variable Examples
<$vars> widget, this situation may be handled in the following way:\define helloworld() Hello world!
<$vars greeting="Hi" me={{!!title}} sentence=<<helloworld>>>
<<greeting>>! I am <<me>> and I say: <<sentence>>
</$vars><$set> widget:<$set name="greeting" value="Hi" >
<$set name="me" value={{!!title}} >
<$set name="sentence" value=<<helloworld>> >
<<greeting>>! I am <<me>> and I say: <<sentence>>
</$set>
</$set>
</$set>Remarks
Introduction
Content and Attributes
<$view> widget is displayed if the field or property is missing or empty.Attribute Description tiddler The title of the tiddler (defaults to the current tiddler) field The name of the field to view (defaults to "text") index The name of the index to view format The format for displaying the field (see below) template Optional template string used with certain formats such as dates subtiddler Optional SubTiddler title when the target tiddler is a plugin (see below) Formats
format attribute:Format Description text Plain text htmlencoded The field is displayed with HTML encoding urlencoded The field is displayed with URL encoding doubleurlencoded The field is displayed with double URL encoding htmlwikified The field is wikified and the resulting HTML returned as plain text (ie HTML elements will appear in plain text) plainwikified The field is wikified and the text content of the resulting HTML returned as plain text (ie HTML elements will be removed) htmlencodedplainwikified The field is wikified and the text content of the resulting HTML returned as HTML encoded plain text (ie HTML elements will be removed) date The field is interpreted as a UTC date and displayed according to the DateFormat specified in the template attributerelativedate The field is interpreted as a UTC date and displayed as the interval from the present instant stripcomments The field is interpreted as JavaScript source code and any lines beginning \\# are strippedjsencoded The field is displayed as a JavaScript encoded string SubTiddler Access
<$view tiddler="$:/core" subtiddler="$:/DefaultTiddlers"/>
tm-add-field message is handled by the FieldManglerWidget. It adds the specified field with a blank value if the field doesn't already exist.Name Description param Name of field to add tm-add-tag message is handled by the FieldManglerWidget. It adds the specified tag.Name Description param Name of tag to add tm-browser-refresh message refreshes the page, causing the re-initialisation of any plugin tiddlers. It does not require any properties on the event object.tm-clear-password message clears the current password from the password vault, clearing the $:/isEncrypted tiddler. See EncryptionMechanism for details.event object:Name Description param Title of a tiddler to use as a template for the new tiddler paramObject Optional hashmap of variable values to use for the rendering tm-edit-bitmap-operation invokes one of the available operations on a surrounding bitmap editor. Therefore the message has to be dispatched within the editor in order for it to catch it. The following properties on the event object are required:Name Description param Name of the operation to be executed, see below for a list of possible operations paramObject Hashmap of additional parameters required by the operation top be executed tm-edit-bitmap-operation message is usually generated by a ButtonWidget or an ActionWidget and is handled by the surrounding bitmap editor.Bitmap Operations
Name Description resize Name Description width Specifies the width the image is resized to height Specifies the height the image is resized to clear Name Description colour Colour the image should be filled with, defaults to WhiteExample
<$button>
<$action-sendmessage
$message="tm-edit-bitmap-operation"
$param="resize"
width={{$config-title$/new-width}}
height={{$config-title$/new-height}}
/>
...
Resize
</$button>tm-edit-text-operation invokes one of the available operations on a surrounding text editor. Therefore the message has to be dispatched within the editor in order for it to catch it. The following properties on the event object are required:Name Description param Name of the operation to be executed, see below for a list of possible operations paramObject Hashmap of additional parameters required by the operation top be executed tm-edit-text-operation message is usually generated by a ButtonWidget or an ActionWidget and is handled by the surrounding text editor.Text Operations
Name Description excise Name Description title Title of the new tiddler the selected content is excised to type Type of the replacement to be inserted: Can be one of transclude, link or macromacro In case type= macro, specifies the name of the macro to be inserted. The title of the new tiddler is provided as the first parameter to the macro. Defaults to the translink macrotagnew If ' yes', will tag the new tiddler with the title of the tiddler currently being editedreplace-all Name Description text Text to be inserted replace-selection Name Description text Text to be inserted prefix-lines Name Description character Prefix character count Number of characters that make up the prefix !" and count="3" would insert the prefix "!!!", which will resolve to a subheading when parsed as WikiText.wrap-lines prefix and suffix.Name Description prefix String to be prefixed to the selected lines suffix Suffix to be inserted after the selected lines wrap-selection prefix and suffix.Name Description prefix String to be prefixed to the selection suffix Suffix to be inserted after the selection Example
<$action-sendmessage
$message="tm-edit-text-operation"
$param="wrap-selection"
prefix="''"
suffix="''"
/>tm-fold-all-tiddlers message folds all tiddlers in the current story list. It does so by setting the text of a state tiddler to either "show" or "hide", according to the fold state.Name Description foldedStatePrefix Prefix for the state tiddler in which the fold state is stored. tm-fold-all-tiddlers message is usually generated with the ButtonWidget and is handled by the surrounding NavigatorWidget.
tm-fold-other-tiddlers message folds all tiddlers in the current story list, except the one specified in the param parameter. It does so by setting the text of a state tiddler to either "show" or "hide", according to the fold state.Name Description param Title of the tiddler that should be ignored by the fold operation. foldedStatePrefix Prefix for the state tiddler in which the fold state is stored. tm-fold-other-tiddlers message is usually generated with the ButtonWidget and is handled by the surrounding NavigatorWidget.
tm-fold-tiddler message folds the tiddler specified in the param parameter. It does so by setting the text of a state tiddler to either "show" or "hide", according to the fold state.Name Description param Title of the tiddler that should be folded. If the tiddler is already folded, it will be unfolded instead. foldedStatePrefix Prefix for the state tiddler in which the fold state is stored. If no state prefix is provided, tm-fold-tiddler will do nothing.tm-fold-tiddler message is usually generated with the ButtonWidget and is handled by the surrounding NavigatorWidget.
tm-home message closes any open tiddlers and re-opens the default tiddlers set in $:/DefaultTiddlers. It also remove any permalink from the browser address bar. It does not require any properties on the event object.tm-load-plugin-from-library message load the specified tiddler or plugin from the specified plugin library.Name Description title Title of the tiddler or plugin to be loaded into the current wiki url Url specifying the plugin library from which the tiddler or plugin is to be loaded. Example
<$button>
<$action-sendmessage $message="tm-load-plugin-from-library" title="$:/plugins/tiddlywiki/codemirror" url="http://tiddlywiki.com/library/v5.1.11/index.html"/>
Install CodeMirror
</$button>tm-load-plugin-from-library message is usually generated with the ButtonWidget and is handled by the core itself.
tm-load-plugin-library message loads the specified plugin library and imports information about the contained plugins in temporary tiddlers.Name Description url Url specifying the plugin library to be loaded. infoTitlePrefix Prefix to the temporary tiddlers being created, containing information about the plugins the plugin library offers. Defaults to $:/temp/RemoteAssetInfo/Example
<$button>
<$action-sendmessage $message="tm-load-plugin-library" infoTitlePrefix="$:/temp/RemoteAssetInfo/" url="http://tiddlywiki.com/library/v5.1.11/index.html"/>
Load official plugin library
</$button>tm-load-plugin-library message is usually generated with the ButtonWidget and is handled by the core itself.
event object:Name Description param Title of the tiddler to be displayed paramObject Hashmap of variables to be provided to the modal paramObject.Example
Your name: <$edit-text tiddler="$:/temp/yourName" tag="input" default="Your name"/>
Your message:
<$edit-text tiddler="$:/temp/yourMessage" default="Your message"/>
<$button>
<$action-sendmessage $message="tm-modal" $param="SampleModal" yourName={{$:/temp/yourName}} yourMessage={{$:/temp/yourMessage}}/>
Click me!
</$button>tm-navigate message inserts the specified tiddler into the story and puts it at the top of the history stack. If the tiddler is not already present in the story then it will be positioned immediately after the tiddler specified in event.navigateFromTitle.event object:Name Description navigateTo Title of the tiddler that is being navigated navigateFromTitle Title of the tiddler from which the navigation was initiated navigateFromClientRect Bounding rectangle in client page coordinates of the element initiating the navigation navigateSuppressNavigation true causes the new tiddler to only be added to the story, and not the history stack. This suppresses the scrolling associated with navigating to a tiddler event object:Name Description param Title of the tiddler to be displayed paramObject Hashmap of variables to be provided to the notification tm-open-window message opens a tiddler in a new browser window. If no parameters are specified, the current tiddler is opened in a new window. Similiar to tm-modal any additional parameters passed via the paramObject are being provided as variables to the new window.Name Description param Title of the tiddler to be opened in a new browser window, defaults to currentTiddler if emptytemplate Template in which the tiddler will be rendered in width Width of the new browser window height Height of the new browser window paramObject Hashmap of variables that will be provided to the window tm-open-window message is usually generated with the ButtonWidget and is handled by the core itself.
tm-permalink message changes the browser address bar to form a permalink to a specified tiddler, defaulting to the current tiddler.event object:Name Description param Title of the tiddler to be permalinked tiddlerTitle The current tiddler (used by default if the tiddler title isn't specified in the param)tm-permaview message changes the browser address bar to form a permaview that specifies all the open tiddlers in the main story river, and the tiddler to be navigated, defaulting to the current tiddler.event object:Name Description param Title of the tiddler to be navigated within the permaview tiddlerTitle The current tiddler (used by default if the tiddler title isn't specified in the param)tm-print message causes the browser to display the print dialog for the current page. It does not require any properties on the event object.tm-remove-field message is handled by the FieldManglerWidget. It removes the specified field.Name Description param Name of field to remove tm-remove-tag message is handled by the FieldManglerWidget. It removes the specified tag.Name Description param Name of tag to remove event object:Name Description param Title of a tiddler to use as a template for rendering the wiki (defaults to $:/core/save/all)paramObject Optional hashmap of variable values to use for the rendering tm-scroll message causes the surrounding scrollable container to scroll to the specified DOM node into view. The tm-scroll is handled in various places in the core itself, but can also be handled by a ScrollableWidget.Name Description target Target DOM node the scrollable container should scroll to. tm-scroll can only be generated within javascript code.
tm-set-password message prompts the user for a new password and stores it in the password vault, replacing any existing password. It also sets the $:/isEncrypted tiddler. See EncryptionMechanism for details.tm-unfold-all-tiddlers message unfolds all tiddlers in the current story list. It does so by setting the text of a state tiddler to either "show" or "hide", according to the fold state.Name Description foldedStatePrefix Prefix for the state tiddler in which the fold state is stored. tm-unfold-all-tiddlers message is usually generated with the ButtonWidget and is handled by the surrounding NavigatorWidget.
$. For example:<$button message="tm-close-tiddler">Close Me!</$button>attr=<<myMacro>>)attr={{MyTiddler!!field}})attr={{{ [filter[op]] }}})
Introduction
Content and Attributes
<$wikify> widget is the scope for the value assigned to the variable.Attribute Description name The name of the variable to assign text The text to parse and render type The ContentType of the text (defaults to text/vnd.tiddlywiki)mode The parse mode: block (the default) or inlineoutput Keyword indicating the desired output type, defaulting to text (see below)Keyword Description text Return the plain text of the rendered output (ie HTML tags are omitted) formattedtext Return the plain text with simple text formatting of the rendered output (ie HTML tags are omitted) html Return the rendered HTML of the output parsetree Return a formatted JSON representation of the parse tree widgettree Return a formatted JSON representation of the widget tree *.hta. The fsosaver module can then use the ActiveX FileSystemObject to save changes.Introduction
Setting Up
npm link (Windows) or sudo npm link (Mac/Linux) to tell npm to use this copy of the repo as the globally installed onenpm install -g tiddlywiki.
.XLSX spreadsheets generated by applications like Microsoft Excel and Google Sheets. It can be used in the browser or under Node.js.